繁体   English   中英

尝试读取tarball时具有绝对路径的FileNotFoundError

[英]FileNotFoundError with absolute path when trying to read tarball

我正在尝试从tar文件中读取,但是尽管指定了绝对路径,但仍得到FileNotFoundError

这是代码的相关部分:

1 from pathlib import Path
2
3 testPath = Path("G:/test.tar")
4 tar = tarfile.open(testPath, "r")
5 ...

并且该文件肯定存在。 在此处输入图片说明

但是我得到的是(从第4行开始):

FileNotFoundError: [Errno 2] No such file or directory: 'G:\\test.tar'

(我正在使用PyCharm btw。)我缺少什么? 如果需要,我将很乐意提供其他信息。

检查以确保您的脚本/文件位于正确的目录中

from pathlib import Path
import tarfile

testPath = Path("Songs.txt.tar")
tar = tarfile.open(testPath, "r")
print(tar) # Returns <tarfile.TarFile object at 0x100d44f98>

print(tarfile.is_tarfile("Songs.txt.tar")) # Returns True if its tar file

由于在第3行中,您正在使用以下行生成文件路径:

testPath = Path("G:/test.tar")

testPath变量的类型为pathlib.WindowsPath。 而在下一个tarfile.open中,需要字符串格式的文件路径。

请尝试以下操作:

testPath = Path("G:/test.tar")
tar = tarfile.open(str(testPath), "r")

要么:

testPath = str(Path("G:/test.tar"))
tar = tarfile.open(testPath, "r")

解:

在最近一次PC重置后,我忘记了再次将资源管理器视图更改为“始终显示文件类型扩展名”,这导致我不知道它应该是

test.tar.gz

因为此目录中除了该文件外仅存在其他文件夹。 因此,调整我的testPath解决了这一问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM