182 votes

Comment résoudre SyntaxError sur le fichier manage.py généré automatiquement?

Je suis en suivant le tutoriel Django https://docs.djangoproject.com/es/1.10/intro/tutorial01/

J'ai créé un "monsite" dummy projet (mon tout premier) et essayer de le tester sans l'altérer.

django-admin startproject mysite
cd mysite
python manage.py runserver

File "manage.py", line 14
) from exc
^
SyntaxError: invalid syntax

Je suis un SyntaxError sur un fichier qui a été généré par le système lui-même. Et je semble incapable de trouver quelqu'un d'autre qui a connu le même problème.

Je vais ajouter quelques données de mon installation dans le cas où il peut être utiliser

$ vpython --version
Python 2.7.12
$ pip --version
pip 9.0.1 from /home/frank/.local/lib/python2.7/site-packages (python 2.7)
$ python -m django --version
1.10.6

Quelqu'un peut-il m'aider?

Mise à jour: ajout de contenu généré automatiquement manage.py

cat manage.py 
#!/usr/bin/env python3
import os
import sys

if __name__ == "__main__":
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings")
    try:
        from django.core.management import execute_from_command_line
    except ImportError as exc:
        raise ImportError(
            "Couldn't import Django. Are you sure it's installed and "
            "available on your PYTHONPATH environment variable? Did you "
            "forget to activate a virtual environment?"
        ) from exc
    execute_from_command_line(sys.argv)

171voto

lobsang Points 476

Assurez-vous à quelle version de python vous connectez le django avec.

Lorsque vous installez django en utilisant simplement pip install django, vous devez exécuter python manage.py startapp sinon si vous avez utilisé pip3 Cliquez ici pour voir un exemple d' installation de terminal django, puis python3 manage.py startapp

76voto

Fernando Points 131

Vous pouvez essayer avec python3 manage.py runserver . Ça marche pour moi.

36voto

Aditya Sinha Points 121

vous devez activer votre environnement virtuel. Dans terminal -> source env / bin / activate maintenant, il y aura ----> (env) dans votre terminal affiché!

maintenant cela fonctionnera -> serveur d'exécution.

Pas besoin de supprimer la partie exc!

16voto

Martin Karari Points 76

J'éprouvais la même chose, mais cela a été résolu en exécutant python 3.6 spécifique, comme ci-dessous:

 python3.6 manage.py runserver
 

12voto

Frank Points 784

Après avoir testé avec des instructions précises (en utilisant python2 ou python3 au lieu de "python"), je suis persuadé que peu importe ce que dit le tutoriel, cela fonctionne UNIQUEMENT avec python3.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X