我有一个 python(OSX Lion 上的 v2.7.2)脚本,它将存档解压缩到新文件夹中,然后在这些文件中找到 csv。然后它尝试打开 CSV 并通读它。
在某种程度上,一切都按预期进行。我遇到的问题是,当如上所述执行时,脚本有时会认为文件长度为 0。但是当我从命令行解释器运行相同的代码时,它可以正确地看到该文件。谁能帮我理解这可能是什么原因?
伪代码:
# unzip the archive, locating csvfile along the way...
statinfo = os.stat(unzip_dir + "/" + csvfile)
print statinfo
上述代码片段的输出:
posix.stat_result(st_mode=33188, st_ino=5318966, st_dev=234881026L, st_nlink=1, st_uid=0, st_gid=80, st_size=0, st_atime=1329963124, st_mtime=1329963124, st_ctime=1329963124)
(注意 st_size=0!)
现在我直接进入python命令行并输入:
import os
statinfo = os.stat("/Users/Me/Testdir/test.csv")
print statinfo
以上代码片段的输出:
posix.stat_result(st_mode=33188, st_ino=5318966, st_dev=234881026L, st_nlink=1, st_uid=0, st_gid=80, st_size=290, st_atime=1329963124, st_mtime=1329963124, st_ctime=1329963124)
正如我们所见,Python 现在可以看到 st_size。
我被难住了。有任何想法吗?如果需要的话我可以发布更多代码。谢谢。
最佳答案
您可能只是忘记冲水。
关于python - 为什么解压后 Python 不能立即识别 CSV 的文件大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9406315/