我是python的新手,我对一段python代码有疑问,它会从模型输出文件中创建一个清理过的输出文件。此代码是为Mac用户编写的,但现在我想在Windows中运行它。但它给出了一条错误信息。你能帮我转换这段代码,以便在Windows中使用它吗?感谢。
import sys
if len(sys.argv) > 1:
fileName = sys.argv[1]
else:
print "selected_um_b.out" #insert file name here
sys.exit()
f = open(fileName)
counter = 0
fw = open(fileName+".cleaned", 'w')
for line in f:
line = line.strip()
counter = counter + 1
if counter <= 4:
fw.write(line+"\n");
continue
values = line.split("\t")
if (values[4].strip() == "-99" or values[5].strip() == "0"): continue
fw.write("\t".join(values)+"\n")
f.close()
更新
错误消息是:
Traceback(最近一次调用最后一次):文件 sys.exit()中第7行的“C:\ trial_batch \ clean_output.py” SystemExit
答案 0 :(得分:1)
程序在执行时需要命令行上的文件名。看来你没有提供,所以程序退出(sys.exit()
调用终止程序)。
你是如何尝试使用它的?如果您只想转换一个文件,请将文件和Python脚本放在同一目录中。用filename = "yourfilename.typ"
替换第3行到第7行(不要缩进该行);它将读取文件(在我的示例中为“yourfilename.typ”)并在文件名中写入一个带“clean”的输出文件。