【问题标题】:Python remove brackets and String quotation marks from arrayPython从数组中删除括号和字符串引号
【发布时间】:2017-09-24 08:15:59
【问题描述】:
myArray = []
textFile = open("file.txt")
lines = textFile.readlines()
for line in lines:
    myArray.append(line.split(" "))
print (myArray)

这段代码输出

[['a\n'], ['b\n'], ['c\n'], ['d']]

我需要做什么才能输出

a, b, c, d

【问题讨论】:

    标签: python multidimensional-array file-handling


    【解决方案1】:

    你可以试试这样的:

    import re
    arr = [['a\n'], ['b\n'], ['c\n'], ['d']]
    arr = ( ", ".join( repr(e) for e in arr ))
    arr = arr.replace('\\n', '')
    new = re.sub(r'[^a-zA-Z0-9,]+', '', arr)
    print(new)
    

    结果:

    a,b,c,d
    

    【讨论】:

      【解决方案2】:

      看来您应该使用 strip()(修剪空白)而不是 split()(生成字符串块列表。

      myArray.append(line.strip())
      

      然后 'print(myArray)' 将生成:

      ['a', 'b', 'c', 'd']
      

      要打印 'a, b, c, d' 你可以使用 join():

      print(', '.join(myArray))
      

      【讨论】:

        【解决方案3】:

        您可以执行以下操作:

        myArray = [[v.strip() for v in x] for x in myArray]
        

        这将删除所有格式字符。

        如果您不希望每个字符都在自己的数组中,那么您可以这样做:

        myArray = [v[0] for v in myArray]
        

        要打印,然后 'print(', '.join(myArray))

        【讨论】:

          【解决方案4】:

          您正在将list 添加到结果中(split 返回一个列表)。此外,为拆分字符指定“空格”并不是最佳选择,因为它不会删除换行符、回车符、双空格会创建一个空元素。

          您可以使用列表推导来做到这一点,不带参数地拆分项目(所以\n 自然而然地消失了)

          with open("file.txt") as lines:
              myArray = [x for line in lines for x in line.split()]
          

          (注意with 块,因此文件一退出就关闭,双循环将列表列表“展平”为单个列表:可以处理一行中的多个元素)

          然后,要么打印数组的表示形式

          print (myArray)
          

          得到:

          ['a', 'b', 'c', 'd']
          

          或者您使用逗号+空格生成连接字符串

          print(", ".join(myArray))
          

          结果:

           a, b, c, d
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2018-08-16
            • 1970-01-01
            • 2014-02-16
            • 2021-02-26
            • 2012-03-16
            相关资源
            最近更新 更多