修复 "str" 对象在使用 set() 函数时不可调用 Python 3.6.4

Fixing "str" object is not callable when using set() function Python 3.6.4

我正在编写一些代码,试图删除一串字符和数字中的重复项。我打算使用 set() 函数删除重复字符,但它会引发错误。我尝试重新设计,但似乎无法解决问题。在这段代码中,我生成了一个 10 个字符长的字符串,然后在完成之后,运行 通过 set() 函数生成字符串。

while(list<=10):
    spacer=random.choice(charlist)
    final=str(final)+str(spacer)
    list+=1
    print(final)

set(final)

错误是:

Traceback (most recent call last):
  File "", line 45, in <module>
    set(final)
TypeError: 'str' object is not callable

我哪里出错了?

你大概可以这样做

l=1
import random
final = ''
charlist = ['a', 'b', 'c', 'd']
while(l<=10):
    spacer=random.choice(charlist)
    final=str(final)+str(spacer)
    l+=1
    print(final)
    set(final)

print(set(final))

注意

不要使用关键字作为变量 list你之前用过