有人可以解釋為什么我必須輸入我的“名字”兩次嗎?另外,如果你有小費。如果循環找不到任何匹配項,我希望用戶再次輸入名稱。import xlrddef open_file(path): wb = xlrd.open_workbook(path) sheet = wb.sheet_by_index(0) while True: name = input("name: ") nbre_consulate = 1 for row_num in range(sheet.nrows): row_value = sheet.row_values(row_num) if row_value[0] == name and row_value[1] == nbre_consulate: return int(row_value[2])path = "imperator.xlsx"open_file(path)print(open_file(path))在擁有我的row_value[3]. 我不明白為什么。name: Spurius Lartiusname: Spurius Lartius506感謝您的任何提示!
1 回答
三國紛爭
TA貢獻1804條經驗 獲得超7個贊
您必須輸入您的姓名兩次,因為您運行了整個函數兩次。你看到你在哪里運行函數,然后用 print 語句做同樣的事情嗎?您看到的值不僅是打印出來的,而且是由您在 print 語句中運行函數的位置生成的。你可以做些什么來修復它,當你運行它時將它分配給一個變量,然后像這樣單獨打印變量:
path = "imperator.xlsx"
row_value_3 = open_file(path)
print(row_value_3)
添加回答
舉報
0/150
提交
取消
