修改文件目录后,程序运行异常

最近在写测试工具时,需要修改文件名,因此用到了 os.chdir() 方法来切换到默认路径,但是修改文件目录后,程序运行异常,报错:Can’t convert ‘NoneType’ object to str implicitly:

    def open_log_dir(self, result_log):
        '''
        log 重命名
        :param result_log:
        :return:
        '''
        log_name = result_log.split('/')[-1]

        dlg_title = '另存为'
        txt_label = '请输入文件名:'
        defaultInput = log_name
        echo_mode = QLineEdit.Normal
        text, OK = QInputDialog.getText(self, dlg_title, txt_label, echo_mode, defaultInput)
        if OK:
            path = self.def_dir
            os.chdir(path)
            os.rename(log_name, text)
            os.system("start " + path)
            self.set_status_bar('重命名成功!')

但是调用该方法后,再设置默认路径时,提示获取不到配置文件,原来工作路径改变后,必须切回原来路径才能操作!!!

修改后代码如下:

    def open_log_dir(self, result_log):
        '''
        log 重命名
        :param result_log:
        :return:
        '''
        log_name = result_log.split('/')[-1]

        dlg_title = '另存为'
        txt_label = '请输入文件名:'
        defaultInput = log_name
        echo_mode = QLineEdit.Normal
        text, OK = QInputDialog.getText(self, dlg_title, txt_label, echo_mode, defaultInput)
        if OK:
            path = self.def_dir
            temp_path = os.getcwd()
            os.chdir(path)
            os.rename(log_name, text)
            os.system("start " + path)
            os.chdir(temp_path)
            self.set_status_bar('重命名成功!')

我是「Super于」,立志做一个每天都有正反馈的人!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章