我是一名python學習者。試圖從字符串列表中刪除標點符號並創建新列表但失敗。刪除字符串中的標點符號並將其附加到Python列表中
string_list = ['Jingle Bells.', "Donkey Kong's", "Jumping Jehosophat;"]
strings_modified = []
for s in string_list:
strings_modified.append.str(s).translate(None, string.punctuation)
我收到的錯誤是:
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-316-5c979f5c8af8> in <module>()
2 strings_modified = []
3 for s in string_list:
----> 4 strings_modified.append.str(s).translate(None, string.punctuation)
AttributeError: 'builtin_function_or_method' object has no attribute 'str'
需要追加,無需轉換爲字符串後的括號:strings_modified.append(s.translate(無,string.punctuation)) – FLab
不要使用'append.str(s)'使用'append(str(s))' –
問題是我的類型是unicode。 'type(string_list [0])'是'unicode'。如果我不使用str,我得到這個錯誤:'TypeError:translate()只需要一個參數(給出2)'。所以我最終使用'str(s)'。但是這又產生了另一系列問題。當我嘗試在strings_modified中對sm進行操作時: strings_modified.append(sm.replace(「」,「+」))',python只是掛起。 。 。 – vagabond