在Python中将文本文件转换为列表
我是个新手 我有这样一个文本文件:在Python中将文本文件转换为列表,python,Python,我是个新手 我有这样一个文本文件: dates sampletime occupancy SActivities SPresence KhPresence AuPresence CarloPresence 04/05/2015 00:00:00 1430690400 0 0 0 0 0 0 04/05/2015 00:30:00 1430692200 0 0 0 0 0 0 04/05/2015 01:00:00 1430694000 0 0
dates sampletime occupancy SActivities SPresence KhPresence AuPresence CarloPresence
04/05/2015 00:00:00 1430690400 0 0 0 0 0 0
04/05/2015 00:30:00 1430692200 0 0 0 0 0 0
04/05/2015 01:00:00 1430694000 0 0 0 0 0 0
04/05/2015 01:30:00 1430695800 0 0 0 0 0 0
04/05/2015 02:00:00 1430697600 0 0 0 0 0 0
04/05/2015 02:30:00 1430699400 0 0 0 0 0 0
04/05/2015 03:00:00 1430701200 0 0 0 0 0 0
04/05/2015 03:30:00 1430703000 0 0 0 0 0 0
04/05/2015 04:00:00 1430704800 0 0 0 0 0 0
04/05/2015 04:30:00 1430706600 0 0 0 0 0 0
04/05/2015 05:00:00 1430708400 0 0 0 0 0 0
04/05/2015 05:30:00 1430710200 0 0 0 0 0 0
04/05/2015 06:00:00 1430712000 0 0 0 0 0 0
04/05/2015 06:30:00 1430713800 0 0 0 0 0 0
04/05/2015 07:00:00 1430715600 0 0 0 0 0 0
04/05/2015 07:30:00 1430717400 0 0 0 0 0 0
04/05/2015 08:00:00 1430719200 0 0 0 0 0 0
04/05/2015 08:30:00 1430721000 0 0 0 0 0 0
04/05/2015 09:00:00 1430722800 0 0 0 0 0 0
04/05/2015 09:30:00 1430724600 0 0 0 0 0 0
04/05/2015 10:00:00 1430726400 1 0 0 1 0 0
04/05/2015 10:30:00 1430728200 1 0 0 1 0 0
04/05/2015 11:00:00 1430730000 1 0 0 1 0 0
04/05/2015 11:30:00 1430731800 1 0 0 1 0 0
04/05/2015 12:00:00 1430733600 1 0 0 1 0 0
04/05/2015 12:30:00 1430735400 1 0 0 1 0 0
04/05/2015 13:00:00 1430737200 1 0 0 1 0 0
04/05/2015 13:30:00 1430739000 2 1 1 1 0 0
04/05/2015 14:00:00 1430740800 3 1 1 1 0 0
04/05/2015 14:30:00 1430742600 4 1 1 1 0 1
04/05/2015 15:00:00 1430744400 2 1 1 1 0 0
我想从第二行开始检索数据,该行分配给另一个文件的相应列。我该怎么做 例: 非常感谢你
import re
Spresence = []
with open('yourFile.txt') as FL:
for line in FL.readlines()[1:]:
m = re.match("\S+\s+\S+\s+\S+\s+(.*)", line)
if m:
Spresence+=re.split('\s+',m.group(1))
输出
>>>Spresence
['0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1', '0', '0', '1', '0', '0', '1', '0', '0', '1', '0', '0', '1', '0', '0', '1', '0', '0', '1', '0', '0', '1', '0', '0', '1', '0', '0', '1', '0', '0', '1', '0', '0', '1', '0', '0', '1', '0', '0', '1', '0', '0', '2', '1', '1', '1', '0', '0', '3', '1', '1', '1', '0', '0', '4', '1', '1', '1', '0', '1', '2', '1', '1', '1', '0', '0']
有点老套,但它可以工作:
import os
file = open("file.txt", 'r')
spresence = []
for line in file.readlines():
splitLine = line.split(" ")
if len(splitLine) < 5:
continue
if splitLine[4] == "SPresence":
continue
spresence.append(splitLine[4])
print spresence
打开文件,创建一个数组,对于文件中的每一行,它会按每个空间拆分该行,然后获取该行中的第5个元素,即SPresence列。它获取该元素并将其添加到Spresence数组中,并在末尾打印您必须显示到目前为止的代码,以便其他人可以帮助您。否则没有办法给你一个建议。至少你可以自己尝试做一些事情…谢谢,但我想用另一个文件自动完成。我该怎么做?如果你想使用另一个文件,只需将file.txt更改为另一个文件名即可。另外,如果这是对您有效的答案,请选择它作为另一个文件的answer.automatic。我该怎么做?
import os
file = open("file.txt", 'r')
spresence = []
for line in file.readlines():
splitLine = line.split(" ")
if len(splitLine) < 5:
continue
if splitLine[4] == "SPresence":
continue
spresence.append(splitLine[4])
print spresence