我想在安装我的项目时递归地添加文件夹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))