加入包含对象的列表 - 在加入失败之前,我可以设置任何魔术方法将对象转换为字符串吗?
', '.join([…, Obj, …])
我尝试了__str__
和__repr__
,但都没有工作
答案 0 :(得分:12)
不,没有join
钩子(虽然我也想要这个功能)。通常你会看到:
', '.join(str(x) for x in iterable)
或(几乎)等效地:
', '.join(map(str,iterable))
', '.join([str(x) for x in iterable])
(请注意,以上所有内容在使用CPython时的内存使用方面都是等效的,因为str.join
会隐式使用您的生成器并将其转换为元组。)