【问题标题】:add something next to the array objects in python3在 python3 中的数组对象旁边添加一些东西
【发布时间】:2012-11-13 04:52:16
【问题描述】:

我有一个类似的字符串:

A="2+3+4"

我想拆分它,所以我需要在 + 旁边添加空白

A="2 + 3 + 4"
A=A.split()
A=["2","+","3","+","4"]

如何添加空格? 谢谢!

【问题讨论】:

  • 预期输出?字符串还是列表?
  • 如果A="2+3+4" 并且您希望它是"2 + 3 + 4",只需执行A = A.replace('+', ' + ')
  • 我能问一下你为什么要这样做吗...?

标签: python arrays python-3.x


【解决方案1】:

您可以将“+”替换为“+”并将其拆分为一个列表:

A="2+3+4"
A=A.replace('+', " + ")
A=A.split()

或者更简单:

A="2+3+4"
A=list(A)

但是请注意,第二种方法将每个字符彼此分开。

所以对A="123+456" 这样做会导致['1','2','3','+','4','5','6'] 而不是['123','+','456'],所以第一个可能更适合你。

【讨论】:

    【解决方案2】:
    >>> print (A.replace('+',' + ').split()),
    ['2', '+', '3', '+', '4']
    

    原因:拆分方法: Python 3.2.2

    >>> A="2+3+4"
    >>> print (A.split()),     Org result = ['2+3+4']
    

    你想要的结果是['2','+','3','+','4']

    你会得到 Org 结果,因为默认的split 字符是空格, 参考:http://www.tutorialspoint.com/python/string_split.htm

    如果您指定“+”作为拆分字符会怎样?

    >>> print (A.split('+')),   ['2', '3', '4']   almost but not quite !
    
    >>> print (A.replace('+',' + ')),    2 + 3 + 4
    

    所以如果我们把它们结合起来......

    >>> print (A.replace('+',' + ').split())
    ['2', '+', '3', '+', '4']
    

    这是我想像你想要的结果。

    【讨论】:

      猜你喜欢
      • 2013-10-20
      • 1970-01-01
      • 2021-09-02
      • 1970-01-01
      • 2022-12-05
      • 2012-08-11
      相关资源
      最近更新 更多