print() 输出结果中显示引号

3 投票
1 回答
7574 浏览
提问于 2025-04-17 21:22

当下面这段代码被激活时,它会在结果中显示所有的逗号、单引号(还有括号)。

print(name, 'has been alive for', days, 'days', minutes, 'minutes and', seconds, 'seconds!')

举个例子:

('Ryan', 'has been alive for', 10220, 'days', 14726544, 'minutes and', 883593928, seconds!')

我想把它整理得更好看一点,这可能吗?

我说的“好看”,是指像这样:

Ryan has been alive for 10220 days, 14726544 minutes, and 883593928 seconds!

这是完整的代码:

print("Let's see how long you have lived in days, minutes, and seconds!")
name = raw_input("name: ")

print("now enter your age")
age = int(input("age: "))

days = age * 365
minutes = age * 525948
seconds = age * 31556926

print(name, 'has been alive for', days, 'days', minutes, 'minutes and', seconds, 'seconds!')

raw_input("Hit 'Enter' to exit!: ")

1 个回答

7

你需要在代码开头加上 from __future__ import print_function

在 Python 2.x 版本中,你的代码会被解释为打印一个元组,而你使用的是 3.x 版本的语法。

举个例子:

>>> name = 'Ryan'
>>> days = 3
>>> print(name, 'has been alive for', days, 'days.')
('Ryan', 'has been alive for', 3, 'days.')
>>> from __future__ import print_function
>>> print(name, 'has been alive for', days, 'days.', sep=', ')
Ryan, has been alive for, 3, days.

撰写回答