亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

我收到此錯誤消息: TypeError: 'function' object is not

我收到此錯誤消息: TypeError: 'function' object is not

慕的地8271018 2023-09-05 15:33:08
我是Python新手。當我運行以下代碼時出現此錯誤---------------------------------------------------------------------------TypeError                                 Traceback (most recent call last)<ipython-input-17-cdb5a334e110> in <module>     16      17 duplicates_removed = clean_strings---> 18 duplicates_removed = list(dict.fromkeys(duplicates_removed))     19 print(duplicates_removed)TypeError: 'function' object is not iterable有人可以指出我正確的方向嗎?代碼import redef remove_punctuation(value):    return re.sub('[!#?]', '', value)clean_ops = [str.strip, remove_punctuation, str.title]def clean_strings(strings, ops):    result = []    for value in strings:        for function in ops:            value = function(value)        result.append(value)    return resultclean_strings(states_1, clean_ops)duplicates_removed = clean_stringsduplicates_removed = list(dict.fromkeys(duplicates_removed))print(duplicates_removed)
查看完整描述

3 回答

?
慕田峪4524236

TA貢獻1875條經驗 獲得超5個贊

錯誤行是

duplicates_removed = clean_strings

您可能希望將函數的結果存儲在duplicates removed. 為此,您需要執行以下操作:

duplicates_removed = clean_strings(states_1, clean_ops)

請注意我之前如何“合并”該行。在原來的行中,您實際上在里面放入了一個函數對象duplicates_removed- 它不是函數的結果,而是函數對象本身。

該行clean_strings(states_1, clean_ops)調用函數,但不存儲函數結果的任何地方

我也沒有看到你states_1在代碼中定義的位置,我猜是之前?


查看完整回答
反對 回復 2023-09-05
?
有只小跳蛙

TA貢獻1824條經驗 獲得超8個贊

clean_strings(states_1, clean_ops)調用該函數但不將返回值保存到任何變量。


duplicates_removed = clean_strings只是指向該函數而不調用它,因為它沒有 ()


使固定:


duplicates_removed = clean_strings(states_1, clean_ops)

duplicates_removed = list(dict.fromkeys(duplicates_removed))

print(duplicates_removed)


查看完整回答
反對 回復 2023-09-05
?
holdtom

TA貢獻1805條經驗 獲得超10個贊

duplicates_removed = clean_strings

duplicates_removed = list(dict.fromkeys(duplicates_removed))

print(duplicates_removed)


您正在將函數的引用傳遞clean_strings給dict.fromkeys! ^^


這:


duplicates_removed = clean_strings(states_1, clean_ops)

duplicates_removed = list(dict.fromkeys(duplicates_removed))

print(duplicates_removed)

就可以解決問題了:)


查看完整回答
反對 回復 2023-09-05
  • 3 回答
  • 0 關注
  • 214 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號