所以这是代码,我从codecademy复制了角色,并试图改变它,只是为了得到同样的错误。我知道codecademy正在使用python 2,但差异不会太大,以至于基本的“%s”不起作用!
from datetime import datetime
now = datetime.now()
print ("%s + %s + %s") % (now.year, now.month, now.day)
这是我的错误消息:
Traceback (most recent call last):
File "C:\Users\Sunil\Desktop\Beginning Programming\Java\workspace\Helain\src\packag\__init__.py", line 5, in <module>
print ("%s + %s + %s") % (now.year, now.month, now.day)
TypeError: unsupported operand type(s) for %: 'NoneType' and 'tuple'
我犯了什么错误?
答案 0 :(得分:5)
在Python 3中,print
是一个函数,因此此代码调用print("%s + %s + %s")
,然后将%
应用于该调用的结果,即无。
尝试print ("%s + %s + %s" % (now.year, now.month, now.day))
答案 1 :(得分:1)
您也可以使用字符串格式。
from datetime import datetime
now = datetime.now()
print ("{}+{}+{}".format(now.year, now.month, now.day))