Python文件管理并不总是有效?

时间:2017-08-08 14:14:57

标签: python filesystems

我遇到一个奇怪的问题。我有一个BBB与Debian 2015-11-03。我的python 2.7应用程序在启动时自动运行。我在我的脚本中做了一些文件管理。在这种情况下,脚本的一部分不起作用。没有可见的错误消息。根本不值一提。当我在LX终端手动启动我的应用程序(sudo python aceme.py,与自动模式下相同的命令行,同样的dir)时,脚本的一部分工作正常。

正在辩论的部分剧本:

def correction():                                   # to implement the antenna 
                                                       # correction values 
    if abs(az_delta)<5 and abs(el_delta)<5:
        azimc = az_delta
        elevc = el_delta
        conf_data = ""                               # if we accept the 
                          # corrections we need to save them for future use 
        input_file = open('acemedat.py', 'r')
        for line in input_file:
        if 'azcor =' in line:
            line = 'azcor = ' + str(azimc) + '\r\n'
        if 'elcor =' in line:
            line = 'elcor = ' + str(elevc) + '\r\n'
        conf_data += line 
        input_file.close()
        output_file = open ('acemedat.py', 'w')
        output_file.write(conf_data)
        output_file.close()  
        az_cor.configure(text = str('%5.1f' % azimc))
        el_cor.configure(text = str('%5.1f' % elevc))
        message.configure(text="Correction values acknowledged and saved")
    else:
        message.configure(text="Correction denied: delta > 5 degrees")
    clear_message.configure(state='normal')
    return;

在所有情况下,else子句按预期工作。 我需要做些什么来纠正这种情况? 提前致谢, HARKE

1 个答案:

答案 0 :(得分:0)

工作目录是否在启动时运行脚本(并查找acmedat.py),与手动执行时相同?