簡體   English   中英

來自 python 目錄的 Pandas.read_csv 文件

[英]Pandas.read_csv file from directory python

我需要在python中讀取_csv文件哪個文件在UPLOAD_FOLDER

FileNotFoundError: [Errno 2] File b'../bpe.csv' does not exist:

這是代碼:

def get_uploads():
    """gets the images and other files from the uploads directory
    and returns two lists of tuples in the form (name, path)
    """

    others = []

    uploads = os.listdir(os.path.join(app.root_path, app.config['UPLOAD_FOLDER']))

    # sort by time last modified
    uploads.sort(key=lambda filename: os.stat(os.path.join(app.root_path, app.config['UPLOAD_FOLDER'], filename)).st_mtime)

    for upload in uploads[::-1]:
        others.append(( upload))
    print(others)
    for i in others:
        if i=='bpe.csv':
            databpe=i
        if  i=='ch.csv':
            datach=i

    if databpe and  datach:

        df=pandas.read_csv(databpe)
        ch=pandas.read_csv(datach)
        flash("check desktop","success")
    return render_template("page3.html")

os.listdir返回相對路徑。 所以一個最小的修復是:

    df=pandas.read_csv(os.path.join(app.root_path, app.config['UPLOAD_FOLDER'], databpe))
    ch=pandas.read_csv(os.path.join(app.root_path, app.config['UPLOAD_FOLDER'], datach))

更好的重構是:

def get_uploads():
    databpe_path = os.path.join(app.root_path, app.config['UPLOAD_FOLDER'], 'bpe.csv')
    datach_path = os.path.join(app.root_path, app.config['UPLOAD_FOLDER'], 'ch.csv')

    if os.path.isfile(databpe_path) and os.path.isfile(datach_path):
        df=pandas.read_csv(databpe_path)
        ch=pandas.read_csv(datach_path)
        flash("check desktop","success")

    return render_template("page3.html")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM