我已经在论坛上通过了几个答案,但没有任何成功。我正在使用Linux mint,Python 3.6.0,我试图在Python中打开CSV,但随后出现错误:
file = open("~/Desktop/xyz/city.csv", "rb")
FileNotFoundError: [Errno 2] No such file or directory: '~/Desktop/xyz/city.csv'我的代码:
import csv
file = open("~/Desktop/xyz/city.csv", "rb")
reader =csv.reader(file)我还试着把文件移到桌面,就像我在一些答案中找到的那样,而不是路径,我使用了"city.csv“。还是不管用。
这对Linux来说是全新的,我就是不明白为什么它不能工作。
感谢每一封回信!
发布于 2017-02-11 01:22:59
您不应该使用'~‘来指定目录的路径,而应该使用完整路径。例如:
import csv
file = open("/home/user/Desktop/xyz/city.csv", "rb")
reader =csv.reader(file)如果您需要使用代字号,则应该使用os.path.expanduser('~/Desktop/xyz/city.csv')。例如:
import csv
file = open(os.path.expanduser("~/Desktop/xyz/city.csv"), "rb")
reader =csv.reader(file)原因是“代字号扩展”是一个文件系统不能识别的用户界面特性:http://www.gnu.org/software/bash/manual/bashref.html#Tilde-Expansion
发布于 2017-02-11 01:15:45
尝试使用完整的文件路径,如下所示:
file = open("/home/[username]/Desktop/xyz/city.csv", "rb")发布于 2017-02-11 01:20:39
通常情况下,~不能正确扩展。我发现,当需要时,将$HOME环境变量值放入python变量中,然后使用join将其作为前缀附加到文件名的相对位置。这还允许您将文件移动到不同的位置,并创建允许您重新定义前缀的函数。
https://stackoverflow.com/questions/42165000
复制相似问题