linux pyc 文件,linux – 为什么删除关联的* .py文件时会删除* .pyc文件

请参阅最后的更新.

我使用的是Ubuntu Linux 11.10,Python 3.

我写了一个Python脚本,它使用pyuic4将一些Qt * .ui文件转换为* .py.然后我想将获得的* .py文件编译为* .pyc并删除* .py文件.

出于某种原因,当我删除转换后的* .py文件时,* .pyc版本也会被删除:

try:

command = 'pyuic4 -o /home/vic/ui_form.py /home/vic/form.ui'

output = subprocess.check_output(command, shell= True, stderr= subprocess.STDOUT)

except subprocess.CalledProcessError as e:

print('Failed:', e.output)

else:

print('Converted %s to %s' % (source, targetName))

# convert *.py to *.pyc and delete the source

source = '/home/vic/ui_form.py'

target = source + 'c' # py -> pyc

py_compile.compile(source, target)

#shutil.copy(target, target + '_') # if uncommented - the *.pyc_ file remains

os.remove(source) # if commented - both *.py and *.pyc files remain, otherwise both deleted (?)

我不知道发生了什么(请参阅代码中的注释以获取更多信息).

如果我发现WHO删除了文件,我想我会有一个提示 – 也许是pyuic4?

我有可能监视哪个进程删除文件?

更新:

我正在逐步调试.执行os.remove(source)后,将删除这两个文件(* .py – source和* .pyc).

这可能是一些Python行为吗?

解决方法:

您可以设置sysctl -w vm.block_dump = 1以查看dmesg中的每个文件系统操作. (高音量,所以之后再次禁用)

标签:python,linux,ubuntu,file,process

来源: https://codeday.me/bug/20190726/1541299.html


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部