如何在目录中连续 运行 多个 python 文件时打印错误的 python 文件名?
How do you print the wrong python file name while serially running multiple python files in a directory?
我正在使用下面的 python 代码使用 try except 方法 运行 目录 D:\PYTHON FILES
中的多个 python 文件。我需要打印未能 run.Please 参考下面代码的文件的名称。鉴于此,有人可以帮助我吗?
请注意:
请在 DOS 提示符下 运行,不要使用 IPython
。将所有 python 文件(包括一个损坏的文件)放在目录 D:\PYTHON FILES
中
import os, glob
dir='D:\PYTHON_FILES'
os.chdir(dir)
files = glob.glob ('*.py');
for eachfile in files:
try:
os.system('python '+eachfile+'\n')
except:
print(eachfile + ' missed out')
finally:
print('======================')
提到的代码需要一些更正,例如
import os, glob
dir_path = 'D:\PYTHON_FILES'
os.chdir(dir_path)
file_names = glob.glob('*.py')
for file_name in file_names:
return_value = os.system('python {}'.format(file_name))
if return_value != 0:
print('{} missed out'.format(file_name))
print('=' * 24)
更多 pythonic 解决方案。非零 return 值表示执行 system
函数的命令存在一些问题。
我正在使用下面的 python 代码使用 try except 方法 运行 目录 D:\PYTHON FILES
中的多个 python 文件。我需要打印未能 run.Please 参考下面代码的文件的名称。鉴于此,有人可以帮助我吗?
请注意:
请在 DOS 提示符下 运行,不要使用 IPython
。将所有 python 文件(包括一个损坏的文件)放在目录 D:\PYTHON FILES
import os, glob
dir='D:\PYTHON_FILES'
os.chdir(dir)
files = glob.glob ('*.py');
for eachfile in files:
try:
os.system('python '+eachfile+'\n')
except:
print(eachfile + ' missed out')
finally:
print('======================')
提到的代码需要一些更正,例如
import os, glob
dir_path = 'D:\PYTHON_FILES'
os.chdir(dir_path)
file_names = glob.glob('*.py')
for file_name in file_names:
return_value = os.system('python {}'.format(file_name))
if return_value != 0:
print('{} missed out'.format(file_name))
print('=' * 24)
更多 pythonic 解决方案。非零 return 值表示执行 system
函数的命令存在一些问题。