web-dev-qa-db-fra.com

python NameError: le nom 'fichier' n'est pas défini

Je ne connais pas grand chose au python. Je veux commencer à travailler sur le projet et l'instruction d'installation dit:

pip install -r requirements-dev.txt

Enougth simple. Le problème est que je reçois ceci:

    Downloading/unpacking gunicorn==0.13.4 (from -r requirements.txt (line 7))
  Running setup.py Egg_info for package gunicorn
    Traceback (most recent call last):
      File "<string>", line 16, in <module>
      File "/tmp/pip-build-root/gunicorn/setup.py", line 18, in <module>
        long_description = file(
    NameError: name 'file' is not defined
    Complete output from command python setup.py Egg_info:
    Traceback (most recent call last):

  File "<string>", line 16, in <module>

  File "/tmp/pip-build-root/gunicorn/setup.py", line 18, in <module>

    long_description = file(

NameError: name 'file' is not defined

Je ne comprends pas le problème. Peut-être que quelqu'un peut aider?

J'exécute ceci sur Arch Linux, python par défaut python 3 et le projet n'est pas python 3 mais je ne suis pas sûr si c'est ça.

Merci.

41
nickik

file() n'est pas pris en charge dans Python 3

Utilisez open() à la place; voir Fonctions intégrées - open () .

121
parkerproject

Il semble que votre projet soit écrit en Python <3. En effet, la fonction intégrée file()est supprimée dans Python 3 . Essayez d’utiliser Python outil 2to3 ou éditez vous-même le fichier erroné .

EDIT: BTW, la page du projet mentionne clairement que

Gunicorn requiert Python 2.x> = 2.5. La prise en charge de Python 3.x est prévue.

6
mg007

le fichier n'est pas défini dans Python3, que vous utilisez apparemment. Le paquet que vous installez ne convient pas à Python 3, à la place, vous devriez installer Python 2.7 et réessayer.

Voir: http://docs.python.org/release/3.0/whatsnew/3.0.html#builtins

3
Blubber