Python错误:FileNotFoundError:[Errno 2]没有这样的文件或目录(read_csv打开)

时间:2018-11-09 04:13:25

标签: python

<Admin>:
    name: "Admin"
    id:check
    d_username:entry_username
    d_password:entry_password

    on_isAuthenticated: if root.isAuthenticated: app.root.current = "userpage"
    rows:5
    spacing:10

    BoxLayout:
        CustLabel:
            text:'Enter UserName'
        TextInput:
            id:entry_username
            multiline:False
            cursor_color: 1, 0, 0, 1
            hint_text: 'Username'
            padding_x: [50,50]

    BoxLayout:
        CustLabel:
            text:'Enter Password'
        TextInput:
            id:entry_password
            hint_text: 'Password'
            padding_x: [50,50]
            password: True
            multiline:False

    BoxLayout:
        Custbutton:
            text:'Go'
            on_press: check.valid(entry_username.text,entry_password.text)

当我使用第一个with open('~/Documents/data.csv', 'r') as f: print(f.read()) data=pd.read_csv('~/Documents/data.csv') 方法时,出现错误。但是当我使用"with open"时没有问题。

那么谁能告诉我为什么? 谢谢!

1 个答案:

答案 0 :(得分:2)

使用open(),您必须使用os.path.expanduser()函数将波浪号~扩展到用户的实际主目录:

import os
with open(os.path.expanduser('~/Documents/data.csv'), 'r') as f:
    print(f.read())

Pandas的read_csv()为您做到了。

(警告:由于~是Linux文件名中的有效字符,仅用~替换os.getenv("HOME")是一个很糟糕的主意...)