我用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"

当前回答

我将您的脚本复制并粘贴到一个.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

我希望这能有所帮助。

其他回答

在打印时使用,分隔字符串和变量:

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

,打印功能用一个空格分隔项目:

>>> print("foo", "bar", "spam")
foo bar spam

或者更好的使用字符串格式:

print("If there was a birth every 7 seconds, there would be: {} births".format(births))

字符串格式是更强大的,并允许你做一些其他的事情,如填充,填充,对齐,宽度,设置精度等。

>>> print("{:d} {:03d} {:>20f}".format(1, 2, 1.1))
1 002             1.100000
  ^^^
  0's padded to 2

演示:

>>> births = 4
>>> print("If there was a birth every 7 seconds, there would be: ", births, "births")
If there was a birth every 7 seconds, there would be:  4 births

# formatting
>>> print("If there was a birth every 7 seconds, there would be: {} births".format(births))
If there was a birth every 7 seconds, there would be: 4 births

略有不同:使用Python 3并在同一行中打印几个变量:

print("~~Create new DB:",argv[5],"; with user:",argv[3],"; and Password:",argv[4]," ~~")

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

print(f"{your_varaible_name}")

如果你想使用python 3,这很简单:

print("If there was a birth every 7 second, there would be %d births." % (births))

如果你在字符串和变量之间使用逗号,就像这样:

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