[英]Add data folder recursively using data_files in Python
我想在安裝項目時以遞歸mydata2
在根包中添加文件夾mydata1
和mydata2
。 所以我在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.