我剛剛纔知道在Python 3.5中我們可以返回多個值。 所以我試圖找出一段可以使用這個特性的代碼,但問題是我該如何存儲這些多個值?請參考以下代碼。如何存儲多個返回值?
def input1():
stu=input("Enter Student Name")
marks=int(input("Enter Student marks"))
return stu,marks
def assign():
s=[]
m=[]
i=0
while True:
#s[i],m[i]=input1()
a=int(input("0 to exit"))
i+=1
if a==0:
print(s)
print(m)
break
stu
是一個字符串,marks
是整數。 我想同時在陣列s[]
和m[]
中存儲這兩個值。 就在while塊下面是我打算使用的語法,但它顯然不起作用。
輸出:
Enter Student NameR
Enter Student marks45
Traceback (most recent call last):
File "School_Rank.py", line 19, in <module>
assign()
File "School_Rank.py", line 12, in assign
s[i],m[i]=input1()
IndexError: list assignment index out of range
看起來它應該對我有用。什麼是錯誤? –
列表索引超出範圍@ cricket_007。 Ritesh,編輯你的問題,並提供完整的追溯Python打印給你。 –
另外,'a == 0'永遠不會是True,'a'永遠是一個字符串。 (你需要'int()'它)。 –