這很難解釋。所以,我有一個文本文件,「People.txt」,包含以下內容:Python - 在字典中更改數組內元素的值
Jonathan,7,
Laura,11,
Bethany,21,
Jonathan,8,
Ashley,10,
Jonathan,14,
Rachel,10,
Jonathan,5,
我試圖做的是查找文件的具體名稱在比賽中,並且減去數與總共50個名稱對應。
此處重點在於Jonathan在文件中有多個條目。目前,我的代碼在文件中查找匹配,並從50中減去數字。問題是,它沒有考慮到第一個匹配已被「使用」。
(讓我們的名字被搜索的是喬納森)
name = "Jonathan"
total = 50
with open("People.txt","r") as file:
for line in file:
info = line.split(",")
if name == info[0]:
total -= info[1]
我不知道這個例子實際工作中描繪的問題,因爲我發現它有點難以解釋的問題。所以也許只是忽略它/用它作爲我想要做的一般想法。
基本上我遇到的問題是我的真實代碼(這裏的代碼只是一個簡化的例子,因爲我不想在這裏發佈真實的東西)只考慮每次的第一場比賽。 但基本上,我如何確保程序每次都進入下一場比賽?也許這樣它會計算文件中有多少匹配,並且每次它從總數中減去時,在遍歷文件期間到達下一個匹配時繼續。
對不起,如果這沒有任何意義。不確定使用哪個示例代碼。謝謝你的幫助。
你可以把你的所有定位名稱在一個單獨的文件,並宣讀其存儲在一組,迭代人行文件時只檢查該名稱是否在設定與否。順便說一句,當你減去它時,你必須將'info [1]'轉換爲整數 – haifzhan