加入包含仅围绕字符串的引号的混合类型列表

DGa*_*Gav 1 python string list

我有一个混合对象类型(字符串和整数)的列表,我想要做的是.join列表到一个字符串,其中每个字符串用引号括起来BESIDES整数.例如,如果我有这个列表:

sample_list = ['abcd', 'chicken', 'wasd', 1, 'blah', 3, 'foo', 'bar']
Run Code Online (Sandbox Code Playgroud)

我想从中生成以下字符串:

sample_string = "('abcd', 'chicken', 'wasd', 1, 'blah', 3, 'foo', 'bar')"
Run Code Online (Sandbox Code Playgroud)

这就是我所拥有的:

sample_string = "(" + ', '.join("'{0}'".format(item) for item in sample_list if type(item) is not int) + ")"
Run Code Online (Sandbox Code Playgroud)

很显然,我的代码是错误的,因为我的整数值最终因为'if'语句而被删除,但我已经陷入困境,想出一种优雅的方式来生成我想要的字符串,并且想知道是否有人可以帮助提供一些提示如何这样做.

提前致谢!

Ant*_*vBR 6

怎么样:

str(tuple(sample_list))
Run Code Online (Sandbox Code Playgroud)

返回:

"('abcd', 'chicken', 'wasd', 1, 'blah', 3, 'foo', 'bar')"
Run Code Online (Sandbox Code Playgroud)