我用python计算出如果每7秒出生一个孩子5年内会有多少个孩子出生。问题在我的最后一行。我如何得到一个变量的工作时,我打印文本的任何一方?

这是我的代码:

currentPop = 312032486
oneYear = 365
hours = 24
minutes = 60
seconds = 60

# seconds in a single day
secondsInDay = hours * minutes * seconds

# seconds in a year
secondsInYear = secondsInDay * oneYear

fiveYears = secondsInYear * 5

#Seconds in 5 years
print fiveYears

# fiveYears in seconds, divided by 7 seconds
births = fiveYears // 7

print "If there was a birth every 7 seconds, there would be: " births "births"

当前回答

你可以使用字符串格式化来做到这一点:

print "If there was a birth every 7 seconds, there would be: %d births" % births

或者你可以给print多个参数,它会自动用一个空格分隔它们:

print "If there was a birth every 7 seconds, there would be:", births, "births"

其他回答

如果你使用的是python 3.6或最新版本, f弦是最好的,也是最简单的

print(f"{your_varaible_name}")

在中间用,(逗号)就可以了。

为了更好地理解,请参阅下面的代码:

# Weight converter pounds to kg

weight_lbs = input("Enter your weight in pounds: ")

weight_kg = 0.45 * int(weight_lbs)

print("You are ", weight_kg, " kg")

从Python-3.8开始,你可以使用带有变量名打印的f-string !

age = 19
vitality = 17
charisma = 16
name = "Alice"
print(f"{name=}, {age=}, {vitality=}, {charisma=}")
# name='Alice', age=19, vitality=17, charisma=16

命名错误在这里几乎是不可能的!如果您添加、重命名或删除一个变量,您的调试打印将保持正确 调试行非常简洁 不要担心对齐。第四个论点是魅力还是活力?好吧,你不在乎,不管它是正确的。

在当前的python版本中,您必须使用括号,如下所示:

print ("If there was a birth every 7 seconds", X)

我将您的脚本复制并粘贴到一个.py文件中。我用Python 2.7.10运行它,并收到相同的语法错误。我还在Python 3.5中尝试了脚本,并收到以下输出:

File "print_strings_on_same_line.py", line 16
print fiveYears
              ^
SyntaxError: Missing parentheses in call to 'print'

然后,我修改了打印出生数的最后一行:

currentPop = 312032486
oneYear = 365
hours = 24
minutes = 60
seconds = 60

# seconds in a single day
secondsInDay = hours * minutes * seconds

# seconds in a year
secondsInYear = secondsInDay * oneYear

fiveYears = secondsInYear * 5

#Seconds in 5 years
print fiveYears

# fiveYears in seconds, divided by 7 seconds
births = fiveYears // 7

print "If there was a birth every 7 seconds, there would be: " + str(births) + " births"

输出是(Python 2.7.10):

157680000
If there was a birth every 7 seconds, there would be: 22525714 births

我希望这能有所帮助。