Python 字符串格式不支持的操作数

Python 字符串格式不支持的操作数,python,Python,我试图创建一个简单的程序,以mm/dd/yy的形式打印日、月和年,但我一直收到一个回溯错误: %s/%s/%s Traceback (most recent call last): File "C:/Python34/timenow.py", line 4, in <module> print('%s/%s/%s')%(now.month, now.day, now.year) TypeError: unsupported operand type(s) for %: '

我试图创建一个简单的程序,以mm/dd/yy的形式打印日、月和年,但我一直收到一个回溯错误:

%s/%s/%s
Traceback (most recent call last):
  File "C:/Python34/timenow.py", line 4, in <module>
    print('%s/%s/%s')%(now.month, now.day, now.year)
TypeError: unsupported operand type(s) for %: 'NoneType' and 'tuple'

您需要将
%
运算符放在格式字符串之后:

print('%s/%s/%s' % (now.month, now.day, now.year))
当前代码中有Python试图在
print
返回的
None
对象上使用它:

>>> type(print('hi'))
hi
<class 'NoneType'>
>>>
第二个是这里不严格需要字符串格式,因为我们有
print
函数,该函数用于将给定给
print
的参数按特定字符串分开:

>>> from datetime import datetime
>>> now = datetime.now()
>>> print(now.month, now.day, now.year, sep='/')
5/20/2014
>>>

您需要将
%
运算符放在格式字符串之后:

print('%s/%s/%s' % (now.month, now.day, now.year))
当前代码中有Python试图在
print
返回的
None
对象上使用它:

>>> type(print('hi'))
hi
<class 'NoneType'>
>>>
第二个是这里不严格需要字符串格式,因为我们有
print
函数,该函数用于将给定给
print
的参数按特定字符串分开:

>>> from datetime import datetime
>>> now = datetime.now()
>>> print(now.month, now.day, now.year, sep='/')
5/20/2014
>>>