繁体   English   中英

python 3中的意外打印输出

[英]unexpected print output in python 3

我正在做一个python 3教程,我试图弄清楚这些括号从哪里来。

students = int (input())
total = dict()
for i in range(0,students):
  tokens = input().split()
  name = tokens[0]
  total[name] = float(tokens[1]) + float(tokens[2]) + float(tokens[3])

student = input(())
print ("{0:.2f}".format(total[student] / 3))

预期产量

56.00

我的输出

()56.00

替换为:

student = input(())

与:

student = input()

这是正在发生的事情:

 >>> student = input(())
()

student = input(())您将传递一个空元组作为input函数的提示参数。 通常,您向input传递提示字符串 ,但是input (和Python 2中的raw_input )将很乐意接受提示的任何对象并将其转换为字符串,就像print一样。 如果没有提供提示,则不会打印任何提示。 (我怀疑 input只是通过提示进行print )。

因此,您意外的()只是将空元组转换为字符串。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM