Epime 输出一个 .txt 文件,如下所示:
***标题开始***
版本持续:1
级别名称:会话
主题:7
会话:1
随机种子:-1983293234
组:1
显示刷新率:59.654
*** 标题结束 ***
等级:2
*** LogFrame 开始 ***
均值效应偏差:7
程序:trialProc
物品编号:7
偏见1答案:1
*** LogFrame 结束 ***
等级:2
*** LogFrame 开始 ***
均值效应偏差:2
程序:trialProc
物品编号:2
偏见1答案:0
我想解析它并将其写入 .csv 文件,但删除了许多行。
我尝试创建一个字典,将出现在冒号之前的文本作为键,将出现在冒号之后的文本作为值:
{主题:[7, 7],bias1Answer:[1, 0],itemID:[7, 2]}
def load_data(文件名):
数据 = {}
eprime = 打开(文件名,'r')
对于 eprim 中的行:
rows = re.sub('\s+', ' ', line).strip().split(':')
尝试:
数据[行[0]] += 行[1]
除了 KeyError:
数据[行[0]] = 行[1]
eprime.close()
返回数据
对于打开的行(文件名,'r'):
如果':'在行:
行 = line.strip().split(':')
fullDict[行[0]] = 行[1]
打印完整字典
下面的两个脚本都会产生垃圾:
{'\x00\t\x00M\x00e\x00a\x00n\x00s\x00E\x00f\x00f\x00e\x00c\x00t\x00B\x00i\x00a\x00s\x00': '\x00\x005\x00\r\ x00', '\x00\t\x00B\x00i\x00a\x00s\x002\x00Q\x00.\x00D\x00u\x00r\x00a\x00t\x00i\x00o\x00n\x00E\x00r\x00r\x00o\x00r\ x00': '\x00\x00-\x009\x009\x009\x009\x009\x009\x00\r\x00'
如果我可以设置字典,我可以将它写入一个看起来像这样的 csv 文件!!:
主题项目ID ...bias1Answer 7 7 1 7 2 0