Python脚本在命令行中运行,但在运行.py文件时则不行

时间:2013-04-12 13:48:55

标签: python python-3.x

我显然仍然是初学者,但我正在创建一个解析文件,该文件通过文本文件,并构建我需要的文件。

物流并不像显而易见的那样重要。

import fileinput;
for lines in fileinput.FileInput("c:/manhattan.txt", inplace=1):    
    lines = lines.strip();                      
    if lines == '': continue;
    print(lines);


source = open('c:/manhattan.txt','r');
hrt = open('c:/test.hrt','w');
currentline = str(source.readline());  
currentline.lstrip();
workingline = '';                      
while currentline[0] != " ":
    if currentline[0].isdigit() == True:
        if currentline[0:3] == workingline[0:3] and len(workingline)<160:  
            workingline = workingline + currentline[4:7];          
            currentline = str(source.readline());   
            currentline.lstrip();
        else:
            hrt.write(('\x01' + 'LOC01LOC' + workingline).ljust(401,' ') +'\n');  
            workingline = currentline[0:7].replace(';','E');
            currentline = str(source.readline());
            currentline.lstrip();
    else:
        currentline = str(source.readline());
        currentline.lstrip();

hrt.write(('\x01'+'LOC50US1   A*').ljust(401,' ' +'\n');                                                                                                                                                                                                                                                                                                                                                          
hrt.write(('\x02'+'LOCSUNSAT00:0023:5960 60             99990.00  0.00').ljust(401,' ')+'\n');                                                                                                                                                                                                                                                                                                                                                              
hrt.write(('\x02'+'US SUNSAT00:0023:5960 60             99990.03  0.03').ljust(401,' ') +'\n');  
hrt.close();
source.close();

它在python命令行中工作正常,但是在运行.py文件时,它不会将最后三行写入文件。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

您是否尝试在关闭文件之前刷新缓冲区?

hrt.flush()