我是编程的新手,我开始使用Python。我试着在这里查询我的问题,但没有找到任何结果。
我正在尝试使用一个非常简单的打印命令,但由于某种我不明白的原因,我收到错误。
last = 'smith'
middle = 'paul'
first = 'john'
print(first.capitalize(), middle.capitalize(), last.capitalize(), sep='\t')
根据书中的答案,这应该是正确的,但每次我尝试运行它时,我都会收到'sep'的错误:
print(first.capitalize(), middle.capitalize(), last.capitalize(), sep='\t')
^
SyntaxError: invalid syntax
有人可以告诉我我做错了什么。因为我正在使用PyScripter。
[编辑]
谢谢你。我发现我使用的是Python 2.7.3而不是3.3。所以我查阅了手册以了解分隔符的工作原理。在我看来,唯一的区别是方括号。本手册将打印功能描述为:
print([object, ...][, sep=' '][, end='\n'][, file=sys.stdout])
所以我改变了我的打印命令并添加了方括号:
print ([first.capitalize(),middle.capitalize(),last.capitalize()] [, sep='\t'])
但不幸的是,这不起作用,因为我收到一个错误,突出了sep ='\ t'周围的方括号。即使我拿出括号,错误也不会消失。
我不确定我做错了什么,看起来应该很简单。
答案 0 :(得分:2)
你实际上并没有使用Python 3,你只是认为你是。尝试:
import sys
print(sys.version)
看看会发生什么。 Python 2 print ...
语句(Python 3中不是print(...)
函数)将其解释为
print (first.capitalize(), middle.capitalize(), last.capitalize(), sep='\t')
尝试使用关键字参数打印元组,因此sep
上的语法错误