我是Python新手,我正在使用Python3,我正在尝试将列表项连接成一个字符串,我发现当我尝试str().join(lst)
时,我成功地将列表项作为字符串获取但是当我这样做str.join(lst)
我得到了:
TypeError:描述符'join'需要一个'str'对象但是收到了一个 '列表'
str和str()之间有什么不同?
答案 0 :(得分:3)
str
是一个班级。 str()
调用该类的构造函数并返回该类的实例。
你通常想要这样的东西:
", ".join(...)
我认为str().join(...)
相当于"".join(...)
,但后者对大多数Python开发人员来说更为清晰。
答案 1 :(得分:0)
join(list)
是str
类的类方法。 str()
正在构建一个str
类的对象(空字符串对象),它也有join
方法。
str().join(['abc', 'def'])
将返回abcdef
,它等同于''.join(['abc', 'def'])
。 str()
创建空字符串对象的内容。
类方法join
也可用于生成相同的结果。
您可以使用str.join('', ['abc', 'def'])
生成相同的输出。
总之,'string'.join([string list])
相当于str.join('string', [string list])