将数字元组转换为字符串

我有类似于以下内容的数据:

q = (0,0,0)

我想将数字元组转换为字符串。互联网上很多人提供了一个看起来像这样的解决方案:

user = 45
permission = (43, 12, 65, 34, 67)
final = "{},'{}'".format(user, ','.join(str(p) for p in permission))
print(final)

来源:尝试将数字元组转换为字符串。

不幸的是,我不断收到一条错误消息,内容为:TypeError: 'int' object is not callable. 所以,我尝试了其他类似的解决方案','.join(map(str, q))。徒劳无功。

我的申请有问题吗?请帮忙。预期输出:

q
"0" "," "0" "," "0"

或以下字符串:

0,0,0

回答

您可以混合使用列表理解和','.join()

q = (0,0,0)
output = [j for j  in [','.join([str(x) for x in q])][0]]

这输出:

['0', ',', '0', ',', '0']

编辑:鉴于 OP 也接受字符串,您可以避免外部列表理解,只需使用:

','.join([str(x) for x in q])


以上是将数字元组转换为字符串的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>