python os.listdir 不显示所有文件

2024-03-03

在我的windows 7 64位系统中,有一个名为msconfig.exe在文件夹中c:/windows/system32。是的,它必须存在。

但是当我使用os.listdir搜索文件夹c:/windows/system32、我没有收到文件。这是测试代码,在t1.py:

import os
files = os.listdir("c:/windows/system32")
for f in files:
    if f.lower() == "msconfig.exe":
        print(f)

运行python后t1.py,我什么也没得到。 为什么文件丢失了?如何列出文件夹下的所有文件?

顺便说一句:我在 Windows 7 64 位下使用 python 3.3.0 32 位版本


我不认为这是 Python 特有的问题。 Windows 确实如此有趣的运行 64 位操作系统时使用 32 位进程。在这种情况下,运行 32 位 python 时,Windows 可能会将 C:\Windows\SysWOW64\ 的内容显示为 system32。 SysWOW64 包含各种 Windows 组件的 32 位版本,用于 32 位兼容层。

以下是在 Windows 7 x64 系统上运行的; explorer.exe(在本例中为 64 位)肯定会显示这些文件夹的不同内容,但是:

Python 2.7.3 (default, Apr 10 2012, 23:31:26) [MSC v.1500 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> import os
>>> 
>>> s32 = set(os.listdir('C:/Windows/System32'))
>>> s64 = set(os.listdir('C:/Windows/SysWOW64'))
>>> s32-s64 # the difference is an empty set!
set([])
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python os.listdir 不显示所有文件 的相关文章

随机推荐