【问题标题】:Change a list separator delimiter to another (python)将列表分隔符更改为另一个(python)
【发布时间】:2020-09-05 17:36:13
【问题描述】:

我在使用 Python 时需要帮助。 假设我有列表 [22,23,45]。 是否有可能得到这样的输出: [22;23:45] ?

【问题讨论】:

  • 输入可以有3个以上的元素吗?那么输出看起来如何。您可以添加更多输入 -> 输出示例
  • 嗨!这份名单代表什么?你输出到哪里?您只想打印列表吗?喜欢 print("[22;23:45]")?

标签: python list delimiter


【解决方案1】:

如果您将列表显示为字符串,则可以更改分隔符。然后您可以使用join 方法。以下示例将使用; 作为分隔符显示您的列表:

print(";".join(my_list))

顺便说一句,这仅在您的列表项是字符串时才有效。

【讨论】:

    【解决方案2】:

    即使你有不止一件物品

    str(your_list[:1][0])+";" + ":".join(map(str,your_list[1:])) #'22;23:45'
    

    不知道为什么要在列表中换行,但如果您只是在list() 中换行上述字符串

    【讨论】:

      【解决方案3】:

      我的列表 [22,23,45] 返回 [;2;2;,; ;2;3;,; ;4;5;,] 两种方法。

      为了带来更多信息,我有一个变量:

      ID= [elements['id'] for elements in country]
      

      使用print (ID),我得到 [22,23,45] 所以我想这个列表已经是这个表单了。 问题是:我需要另一个分隔符,因为 [22,23,45] 对应于 ['EU, UK', 'EU, Italy', 'USA, California']。

      我希望的输出是 [22,23,45] --> ['EU, UK'; '欧盟,意大利'; '美国,加利福尼亚']

      我不知道它是否更清楚,但希望它可以帮助

      【讨论】:

        【解决方案4】:

        试试这个我不知道你到底想要什么?

        第一个解决方案:

        list = [22,23,45]
        
        str = ""
        for i in list:
            str += "{}{}".format(i, ";")
        new_list=str[:-len(";")]
        print(new_list)
        

        这是第二个解决方案

        list = [22,23,45]
        print(list)
        list=str(list)
        list=list.split(",")
        list=";".join(list)
        print(list)
        

        【讨论】:

        • 因为我是新手,所以无法为您的解决方案投票,但谢谢,它有效!编辑:对不起,它确实适用于数字,但不适用于相应的列表。在第二个列表中使用此解决方案给我以下结果: ['EU, UK', 'EU, Italy', 'USA, California'] --> ['EU;英国'; '欧盟;意大利'; '美国; California'] 我想要的是:['EU, UK', 'EU, Italy', 'USA, California'] --> ['EU, UK'; '欧盟,意大利'; '美国,加利福尼亚']
        猜你喜欢
        • 2019-07-28
        • 1970-01-01
        • 2017-01-09
        • 2020-05-31
        • 1970-01-01
        • 1970-01-01
        • 2019-05-31
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多