Le nom Python 'os' n'est pas défini [dupliquer]

Cette question a déjà une réponse ici:

J'essaie d'exécuter ce module python

from settings import PROJECT_ROOT

DEBUG = True
TEMPLATE_DEBUG = DEBUG


DATABASES = {
    'default': {
        'ENGINE':  'django.db.backends.sqlite3',
        'NAME' : os.path.join(BASE_DIR, 'db_name.sqlite3'),
    }
}


# Make this unique, and don't share it with anybody.
SECRET_KEY = 'sdfgtardyure34654356435'

# Python dotted path to the WSGI application used by Django's runserver; added in v1.4
WSGI_APPLICATION = 'wsgi.application'

############### PYSEC specific variables

# assumes this directory exists
DATA_DIR = "%s/pysec/data/" % PROJECT_ROOT

Mais chaque fois que j'essaie de l'exécuter par F5 j'obtiens ceci

Traceback (most recent call last):
  File "C:Python27pysec-masterlocal_settings-example.py", line 11, in <module>
    'NAME' : os.path.join(BASE_DIR, 'db_name.sqlite3'),
NameError: name 'os' is not defined

Le module de vie dans le C:Python27pysec-master et j'ai eu pysec pour ici

Savez-vous ce que dois-je faire pour exécuter le module avec succès?

26
demandé sur smci 2014-04-14 00:35:40

2 réponses

Il suffit d'ajouter:

import os

Au début, avant:

from settings import PROJECT_ROOT

Cela importera le module python os , qui est apparemment utilisé plus tard dans le code de votre module sans être importé.

59
répondu Ivaylo 2014-04-13 20:47:32

Le problème est que vous avez oublié d'importer os. Ajouter cette ligne de code:

import os

Et tout devrait aller bien. Espérons que cette aide!

18
répondu Quintec 2014-04-13 20:37:07