【问题标题】:Converting numeric tuple to a string将数字元组转换为字符串
【发布时间】:2020-12-12 22:09:24
【问题描述】:

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

q = (0,0,0)

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

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

来源:Trying to convert a numerical tuple into a string

不幸的是,我不断收到一条错误消息:TypeError: 'int' object is not callable。所以,我尝试了像','.join(map(str, q)) 这样的其他解决方案。没用。

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

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

或以下字符串:

0,0,0

【问题讨论】:

  • 能否提供您的预期输出?
  • 添加了预期的输出。
  • 你也在打印用户,它是否在预期的输出中
  • 这个答案来自您链接的问题:','.join(str(x) for x in q) 并且可以很好地与您的元组一起使用。
  • 您问题中的代码打印出45,'43,12,65,34,67'。您希望该输入的结果是什么?

标签: python string integer tuples


【解决方案1】:

您可以混合使用列表理解和','.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])

【讨论】:

    【解决方案2】:
    user = 45
    permission = (0,0,0)
    final = "'{}'".format(','.join(str(p) for p in permission))
    print(final)
    

    这会返回0,0,0

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-04-30
      • 2012-01-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多