0
我知道已經有很多類似的問題,但我已經閱讀過它們,我想我已經嘗試瞭解決方案,但沒有成功。另一個Python字符串比較問題
這是我的代碼
def get_total(player,stat):
total = 0
for player in Batting:
if player['playerID'] == player:
print player['playerID']
total = total + player[stat]
return total
如果我這樣調用該函數:
get_total("gomezca01","HR")
字符串比較不給匹配。
但是,如果我硬編碼字符串如下
if player['playerID'] == "gomezca01":
中的字符串匹配,並且如果循環中實現。
我是一個初學者,知道這可能是一個非常基本的東西,我做錯了,但如果任何人都可以迅速向我指出,我將不勝感激。我已經嘗試過單引號和雙引號的不同組合,並且已經嘗試在傳遞給函數的參數上使用strip函數。謝謝。
什麼是「擊球」?當您的輸入和循環變量具有相同的名稱時,您希望發生什麼? –
問題是,你使用變量名'player'來引用兩件事情,而python不知道你每次引用哪個變量。事實上,當你在兩個地方使用相同的變量名時,後面的用法會覆蓋前者。只需將'Batting'中的播放器替換爲'在擊球中替換other_variable_name' – inspectorG4dget
@ inspectorG4dget。實際上,Python知道使用哪一個。這是OP不知道的。 –