【发布时间】:2019-04-11 15:11:56
【问题描述】:
我正在编写一个程序,它可以读取有关系统的各种信息,并将其分类为更简洁、更美观的格式。必要的信息会在读取时添加到列表中,但我需要从某些列表元素中删除一些数据。
例如,我的列表将包含一个如下所示的元素:
['Software: 12.01 (built 2016-10-28 21:51:37+01:00)']
如何删除 12.01(或其他任意序列)之后的所有内容?
编辑:我想通了
with open('filename.txt') as f:
software_list = [line.rstrip('\n') for line in f if 'Software:' in line]
for i in software_list:
final_soft_list.append(i.split('(')[0])
print(final_soft_list)
输出给了我:[软件:12.01]
【问题讨论】:
-
您不能在“一些其他任意序列”之后删除。您必须使用例如正则表达式来描述序列。
-
另外,请包括您尝试过的内容
-
myString[0].split('12.01')[0]之类的东西可以完成你的工作。试着调整一下。 -
@DYZ 我说的是任意的,因为版本(12.01)之后的信息会因系统而异。此外,我正在尝试使用其他读取的不同字符串来执行此操作。我试图让它在某个点之后删除任何数据,并且由于数据会因系统而异,我需要某种通配符或表示“只保留这部分”的方式
标签: string python-3.x list substring