Ho un progetto come questo:file di dati metti in progetti python setup.py
├── CHANGES.txt
├── LICENSE
├── MANIFEST.in
...
├── docs
│ └── index.rst
├── negar
│ ├── Negar.py
│ ├── Virastar.py
│ ├── Virastar.pyc
│ ├── __init__.py
│ ├── data
│ │ ├── __init__.py
│ │ └── untouchable.dat
│ ├── gui.py
│ ├── gui.pyc
│ ├── i18n
│ │ ├── fa_IR.qm
│ │ └── fa_IR.ts
│ └── negar.pro
├── setup.py
...
e dentro che la mia lima Virastar.py
bisogno di alcuni dati da data.untouchable.dat
. funziona bene fino a quando installo il progetto con questo setup.py
:
setup(
...
include_package_data=True,
packages = find_packages() + ['negar'],
package_dir={'negar': 'negar'},
package_data={'negar': ['data/*.dat']},
entry_points={
'console_scripts': [
'negar = negar.Negar:main',
],
},
...
)
dopo che all'avvio del programma e quando è necessario che il file di dati che restituisce questo errore:
IOError: [Errno 2] No such file or directory: 'data/untochable.dat'
anche nei miei egg-info
fonti Non riesco a trovare alcun file di dati:
...
negar/Negar.py
negar/Virastar.py
negar/__init__.py
negar/gui.py
negar/data/__init__.py
ho perso qualcosa qui?
Grazie a tutti.
MODIFICA: Devo aggiungere qualcosa di speciale in init .py?
E devo aggiungere questo: ho usato untouchable.dat proprio come questo:
f = codecs.open('data/untouchable.dat', encoding="utf-8")
in python 2.7 hanno cambiato il modo per includere i file o MANIFEST.in qualcosa - non sono sicuro e non l'ho usato ma potrebbe essere una direzione – zenpoy
Sono in Python 2.6! e per alcune ragioni non posso aggiornare ora! – Shahinism