Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python:parse.exp to.csv_Python_Python 2.7_Csv - Fatal编程技术网

Python:parse.exp to.csv

Python:parse.exp to.csv,python,python-2.7,csv,Python,Python 2.7,Csv,我正在浏览.exp文件目录,从每个文件中提取我想要的信息,然后将其编译成.csv文件。这很不雅观,但在这里: outMCfile = open(os.path.join(workingDir,'output',date+'NeptuneCdSummary.csv'),'w+') for fn in fileList: infile = os.path.join(workingDir,fn) tmpHeader = open(infile,'r').readlines()

我正在浏览
.exp
文件目录,从每个文件中提取我想要的信息,然后将其编译成
.csv
文件。这很不雅观,但在这里:

    outMCfile = open(os.path.join(workingDir,'output',date+'NeptuneCdSummary.csv'),'w+')
for fn in fileList:
    infile = os.path.join(workingDir,fn)

    tmpHeader = open(infile,'r').readlines()
    for line in tmpHeader:
        line = line.strip()
        if line.startswith('Date') == True:
            doa = line.split(' ')
            doa = doa[1]
            outMCfile.write(doa)
            outMCfile.write("\n")
        elif line.startswith('Run number') == True:
            run = line.split(':')
            run = run[1].strip()
            outMCfile.write(run)
            outMCfile.write("\n")
        elif line.startswith('Comment') == True:
            comment = line.split(':')
            comment = comment[1].strip()
            outMCfile.write(comment)
            outMCfile.write("\n")
        elif line.startswith('SampleType') == True:
            samType = line.split(':')
            samType = samType[1].strip()
            outMCfile.write(samType)
            outMCfile.write("\n")
        elif line.startswith('Cycle') == True:
            labels = line
            outMCfile.write(labels)
            outMCfile.write("\n")
        elif line.startswith('***') == True:
            summary = line
            outMCfile.write(summary)
            outMCfile.write("\n")

outMCfile.close()
循环的
中的最后两个条件(以“
循环
”和“
***
”开头的行)是22-32列宽(一些是索引,一些是浮动)。我如何界定结果?我只是在我的输出CSV中得到了一个长串的数字,所有这些行都在同一个单元格中。如果我使用
line.split()
,无论括号中使用哪个分隔符,我都会得到一个
TypeError

.exp中的源行(全部在一行上)如下所示: “***系指1.8101587019969535e-003 1.7032095329860594e-003 1.14966302258965E-003 1.1713999855908471e-003 4.7688994577955489e-003 4.557329630687650E-003 3.9930890896827012e-002 2.08290735298893E-002 9.393954259187E-001 9.52340352647734E-001 1.729947734554454545E+000 2.52388993903+43903.48903+46901.4867672E-00100 2.6616393017410958e+000 4.0608176179586236e-001 1.50829448806580E+000 2.1780140681716909e-001 1.4703089782231224e-001”


但是.csv中的输出不再具有空间分隔;都在第一个牢房里,而我希望每个人都有自己的牢房

现在很明显,在以前的所有elif中,您从列表中写入一个值,在最后两个中,您尝试将整个列表写入文件。您只能将字符串写入文件。再次将其转换为字符串:

outMCfile.write(','.join(line.split()))
或者更简单一些:

 outMCfile.write(line.replace(' ', ','))

假设逗号是您的csv分隔符

现在很明显,在以前的所有ELIF中,您从列表中写入一个值,在最后两个中,您尝试将整个列表写入文件。您只能将字符串写入文件。再次将其转换为字符串:

outMCfile.write(','.join(line.split()))
或者更简单一些:

 outMCfile.write(line.replace(' ', ','))

假设逗号是csv分隔符,
==True
是多余的。可能会发布其中一行引起麻烦的内容?另一个吹毛求疵的地方是:在
outMCfile=open(…)
中,
'w'
模式就足够了,因为您从未阅读过它。感谢您提供的提示。==True…我在Python中仍然处于笨拙的阶段,总是在寻找更多的简化技巧。这就是导致问题的原因,特别是:
elif line.startswith('Cycle')==True:labels=line outMCfile.write(labels)outMCfile.write(“\n”)elif line.startswith('***')==True:summary=line outMCfile.write(summary)outMCfile.write(“\n”)
您能给出一个感兴趣的案例行的示例吗?您是否尝试了newline=summary.split()并使用了newline?
==True
是多余的。可能会发布其中一行引起麻烦的内容?另一个吹毛求疵的地方是:在
outMCfile=open(…)
中,
'w'
模式就足够了,因为您从未阅读过它。感谢您提供的提示。==True…我在Python中仍然处于笨拙的阶段,总是在寻找更多的简化技巧。这就是导致问题的原因,特别是:
elif line.startswith('Cycle')==True:labels=line outMCfile.write(labels)outMCfile.write(“\n”)elif line.startswith('***')==True:summary=line outMCfile.write(summary)outMCfile.write(“\n”)
你能举一个感兴趣的案例的行的例子吗?你试过newline=summary.split()并使用newline吗?啊,哇,现在看起来很明显……我再也不会这样做了!非常感谢大家。它现在很有魅力。啊,哇,现在看起来很明显……我再也不会那样做了!非常感谢大家。它现在很有魅力。