簡體   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