【问题标题】:Hi , I want to remove the empty cell from my list before I process it in python嗨,我想在我用 python 处理它之前从我的列表中删除空单元格
【发布时间】:2016-03-10 19:02:04
【问题描述】:

例子:

address= [' ', 'LUT NAME/Register Address', '0', '1', '2', '3', '4', '5', '10', '11', '12', '13', '14', '15', '17', '18', '23', '24', '34', '36', '37', '38']

我希望它转换为:

address=['LUT NAME/Register Address', '0', '1', '2', '3', '4', '5', '10', '11', '12', '13', '14', '15', '17', '18', '23', '24', '34', '36', '37', '38']

address=['LUT NAME/Register Address', ' ', ' ', ' ', ' ']
to address = ['LUT NAME/Register Address']

为了提供更多信息,我从 csv 文件生成它以像数组一样处理它并写入文本文件,但我想删除不需要的空白以便我可以做一些数学运算。 我正在使用 windows shell python 3.5 版本。我试过 split , strip , join 。但不起作用,我收到诸如找不到属性之类的错误。

不胜感激,python 新手。

谢谢

【问题讨论】:

  • 我能够在一定范围内使用 del 函数来做到这一点。

标签: arrays list csv whitespace


【解决方案1】:

更新

您可以像这样循环并删除空格

address = [item for item in address if item.strip()]

你可以试试这个

address=['LUT NAME/Register Address', ' ', ' ', ' ', ' ']

address_string = ''.join(address)

address_string = address_string.strip()

address_string.split(',')

这会让你回来

['LUT NAME/Register Address']

【讨论】:

  • 感谢您的回复,但是当我这样做时,我会得到以下输出,它会删除空单元格,但它只是一个字符串,而不是逗号分隔的列表。 address = ['', 'LUT NAME/寄存器地址', '0', '1', '2', '3', '4', '5', '10', '11', '12', '13', '14', '15', '17', '18', '23', '24', '34', '36', '37', '38'] address_string = LUT NAME/Register地址 0 1 2 3 4 5 10 11 12 13 14 15 17 18 23 24 34 36 37 38
  • @RF_Sat 更新了我的答案。您可以循环并消除像这样的空值[item for item in address if item.strip()]
猜你喜欢
  • 2011-05-30
  • 1970-01-01
  • 2021-11-19
  • 1970-01-01
  • 2012-07-15
  • 1970-01-01
  • 2021-02-12
  • 2012-12-11
  • 1970-01-01
相关资源
最近更新 更多