3 回答

TA貢獻(xiàn)1875條經(jīng)驗 獲得超5個贊
錯誤行是
duplicates_removed = clean_strings
您可能希望將函數(shù)的結(jié)果存儲在duplicates removed
. 為此,您需要執(zhí)行以下操作:
duplicates_removed = clean_strings(states_1, clean_ops)
請注意我之前如何“合并”該行。在原來的行中,您實際上在里面放入了一個函數(shù)對象duplicates_removed
- 它不是函數(shù)的結(jié)果,而是函數(shù)對象本身。
該行clean_strings(states_1, clean_ops)
調(diào)用函數(shù),但不存儲函數(shù)結(jié)果的任何地方
我也沒有看到你states_1
在代碼中定義的位置,我猜是之前?

TA貢獻(xiàn)1824條經(jīng)驗 獲得超8個贊
clean_strings(states_1, clean_ops)調(diào)用該函數(shù)但不將返回值保存到任何變量。
duplicates_removed = clean_strings只是指向該函數(shù)而不調(diào)用它,因為它沒有 ()
使固定:
duplicates_removed = clean_strings(states_1, clean_ops)
duplicates_removed = list(dict.fromkeys(duplicates_removed))
print(duplicates_removed)

TA貢獻(xiàn)1805條經(jīng)驗 獲得超10個贊
duplicates_removed = clean_strings
duplicates_removed = list(dict.fromkeys(duplicates_removed))
print(duplicates_removed)
您正在將函數(shù)的引用傳遞clean_strings給dict.fromkeys! ^^
這:
duplicates_removed = clean_strings(states_1, clean_ops)
duplicates_removed = list(dict.fromkeys(duplicates_removed))
print(duplicates_removed)
就可以解決問題了:)
添加回答
舉報