【问题标题】:split and strip elements in list python拆分和剥离列表python中的元素
【发布时间】:2013-12-28 23:31:11
【问题描述】:

words 是一个看起来像这样的列表:

        ['34 ', '111110 ', '0 ', '@jjuueellzz down ']
        ['67 ', '111112 ', '1 ', 'Musical awareness ']
        ['78 ', '111114 ', '1 ', 'On Radio786 ']
        ['09 ', '111116 ', '0 ', 'Kapan sih lo ']

如果您注意到列表中每个元素之后的末尾都有一个空格,我知道我应该删除但不知道该怎么做。

这是我的代码:

words = line.split('\t')

如果我这样做 words = line.strip().split('\t') - 它不会像我想要的那样正确剥离

【问题讨论】:

    标签: python file list strip


    【解决方案1】:

    最简单的方法可能是将您的第一行替换为以下内容:

    words = [x.strip() for x in line.split('\t')]
    

    这是一个列表推导,获取 line.split('\t') 返回的列表中的每个元素,将其剥离,然后将其添加到一个新列表中。

    【讨论】:

      【解决方案2】:

      这是最简单的列表理解:

      lst = ['34 ', '111110 ', '0 ', '@jjuueellzz down ']
      new_lst = [x.strip() for x in lst]
      

      现在我不确定我是否完全理解您的意见——也许您有一个列表列表。如果是这种情况,那么您只需将一个列表推导式放入另一个列表推导式中:

      new_data = [[x.strip() for x in lst] for lst in old_data]
      

      如果原始列表是line.split('\t') 的结果,则答案变得更加容易。在任何空格上拆分,而不仅仅是制表符:

      line.split()  # splits on *any* whitespace!.
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-09-05
        • 2014-06-02
        • 1970-01-01
        • 2020-07-24
        • 1970-01-01
        • 2023-04-05
        • 2010-12-05
        相关资源
        最近更新 更多