我正在使用Python 3.6.8。在Ubuntu Linux 18.04上
我已经开始使用简单的打印语句教程。该代码会问一个需要输入的问题,然后输出答案。
我重复了代码的最后一行,因为它说明了问题
#!/bin/python3
born = input('What year were you born?')
born = int(born)
age = 2025 - born
print(age)
print('In the year 2025 you will be', age, 'years old')
print 'In the year 2025 you will be', age, 'years old'
我希望第一个打印语句的结果是: 在2025年,您将75岁
第二个应该给出语法错误(因为它是Python 3,没有括号)
我得到的是这个
(“到2025年您将年满75岁”) 在2025年,您将75岁
哪里出问题了?
答案 0 :(得分:1)
运行python
或python3 --version
并查看安装的内容,您的脚本可以在任何版本上运行。
带括号的打印在 3 + 上有效,而没有括号的打印在 2 上有效。
答案 1 :(得分:0)
查看所有建议即可找到答案。我不知道python2和python3都存在于机器上。明确运行python2不会导致任何错误。明确运行python3会导致预期的语法错误。
alex@Desktop:~/Python$ python3 -V
Python 3.6.8
alex@Desktop:~/Python$ python -V
Python 2.7.15+
alex@Desktop:~/Python$ python test.py
What year were you born?1972
53
('In the year 2025 you will be', 53, 'years old')
In the year 2025 you will be 53 years old
alex@Desktop:~/Python$ python3 test.py
File "test.py", line 12
print 'In the year 2025 you will be', age, 'years old'
^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print('In the year 2025 you will be', age, 'years old')?
感谢所有受访者的帮助