假设一个元组有一个整数:
tup = (19201,)
我正在寻找获得此输出的方法:
tup = "(19201)"
到目前为止,我已经尝试过这个:
str_tup = "(" + tup[0] + ")"
但它给了我这个错误:
TypeError:无法将'int'对象隐式转换为str
答案 0 :(得分:6)
比串联更好的方法是使用Python的格式化语法:
str_tup = '({})'.format(tup[0])
str.format
会将{}
替换为您提供的参数(此处为:您的元组值)。
更好的是,你可以将它推广到更高级别的元组:
str_tup = '({})'.format(', '.join([str(x) for x in tup]))
这使用Python的list comprehension syntax将所有元组元素转换为字符串,然后使用join
使用连接字符串将它们连接起来。
答案 1 :(得分:2)
你可以使用
str(tup).replace(',', '')
或
"(" + str(tup[0]) + ")"
您必须将int显式转换为str