簡體   English   中英

在Python中使用data_files遞歸添加數據文件夾

[英]Add data folder recursively using data_files in Python

我想在安裝項目時以遞歸mydata2在根包中添加文件夾mydata1mydata2 所以我在setup.py寫了這個函數:

def gen_data_files(*dirs):
    results=[]
    for datadir in dirs:
        results.extend([(p, [os.path.join(p,f) for f in files]) for p, subdirs, files in os.walk(datadir)])
    return results

然后在setup.py

setup(
    #...
    data_files=gen_data_files('mydata2', 'mydata2'),
    #...
)

可以創建sdist: setup.py sdist upload -r mypypi

但是,當我安裝時,拋出了一個異常: ValueError: too many values to unpack (expected 2)

我是Python新手。 所以我不知道為什么。 在這種情況下,您能幫我嗎? 謝謝!

編輯:這些代碼具有相同的results

results.extend([(p, [os.path.join(p,f) for f in files]) for p, subdirs, files in os.walk(datadir)])

results.extend((p, [os.path.join(p,f) for f in files]) for p, subdirs, files in os.walk(datadir))

該函數應為:

def gen_data_files(*dirs):
    results = []
    for datadir in dirs:
        for p, subdirs, files in os.walk(datadir):
            results.extend((p, os.path.join(p, f)) for f in files)
    return results

另外,我建議使用setuptools

抱歉,問題是我的版本5.99999 太長。 使用6.0固定的東西。

暫無
暫無

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

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