AttributeError: 'module' objet n'a pas d'attribut "config"

Je suis nouveau sur Python et j'essaie mes premières applications. Pourquoi suis-je l'Attribut message:

Traceback (most recent call last):
Fichier "C:\Users\myname\documents\visual studio 2010\Projects\PythonApplication
1\PythonApplication1\RunSikuliOnVM.py", la ligne 97,
la journalisation.config.dictConfig(LOG_DICT_CONFIG_OnVM)
AttributeError: 'module' objet n'a pas d'attribut "config"
Appuyez sur n'importe quelle touche pour continuer . . .

Voici une partie de mon code pour l'instant:

import os
import sys
import subprocess
import fnmatch
import datetime
import logging
import logging.handlers
import logging.config
"""===Global Variables==="""
LOGFILE = r"V:/RunTests.log"
LOGDETAILS= r"V:/SikuliScriptDetails.log"
FAILEDTESTS = r"V:/FailedTests.txt"
"""Logging configuration"""
#   Dictionary configuration for logging within RunSikuliOnVM.py
LOG_DICT_CONFIG_OnVM = {
'version': 1,              
'disable_existing_loggers': False,
'formatters': {
'verbose': {
'format': '%(levelname)-8s %(asctime)s %(module)s %(process)d %(thread)d %(message)s',
'datefmt': '%a, %d %b %Y %H:%M:%S'
},
'standard': {
'format': '%(asctime)s [%(levelname)s] %(name)s: %(message)s',
'datefmt': '%a, %d %b %Y %H:%M:%S'
},
'simple': {
'format': '%(asctime)s %(levelname)-8s %(message)s',
'datefmt': '%a, %d %b %Y %H:%M:%S'
}
},
'handlers': {
'console': {
'level':'DEBUG',    
'class':'logging.StreamHandler',
'formatter': 'simple'
},
'RunTests_Handler': {
'class': 'logging.handlers.TimedRotatingFileHandler',
'level': 'DEBUG',
'formatter': 'simple',
'filename': LOGFILE,
'when':'D',
'interval': 7, 
'backupCount':1, 
'encoding': None, 
'delay': False, 
'utc': False,
},
'SikuliScriptDetails_Handler': {
'class': 'logging.handlers.TimedRotatingFileHandler',
'level': 'DEBUG',
'formatter': 'verbose',
'filename':LOGDETAILS,
'when':'D',
'interval': 7, 
'backupCount':2, 
'encoding': None, 
'delay': False, 
'utc': False,
},
'FailedTests_Handler': {
'class': 'logging.handlers.TimedRotatingFileHandler',
'level': 'DEBUG',
'formatter': 'standard',
'filename':FAILEDTESTS,
'when':'D',
'interval': 7, 
'backupCount':2, 
'encoding': None, 
'delay': False, 
'utc': False,
}
},
'loggers': {
'RunTests_Logger': {                  
'handlers': ['RunTests_Handler'],        
'level': 'DEBUG',  
'propagate': False  
},
'SikuliScriptDetails_Logger': { 
'handlers': ['SikuliScriptDetails_Handler'],
'level': 'DEBUG',  
'propagate': False 
},
'FailedTests_Logger': {
'handlers': ['FailedTests_Handler'],
'level': 'DEBUG',
'propagate': False
}
}
}
logging.config.dictConfig(LOG_DICT_CONFIG_OnVM)
logfilelogger = logging.getLogger('RunTests_Logger')
logdetailslogger = logging.getLogger('SikuliScriptDetails_Logger')
failedtestslogger = logging.getLogger('FailedTests_Logger')

PS: Certains de l'indentation est éteint...

Cette erreur se produit uniquement pour moi, quand import logging.config n'est pas inclus dans le fichier. Est-ce inclus dans le code que vous êtes en cours d'exécution?
Oui, il est. Comme vous pouvez le voir dans mon extrait de code, j'ai tous les trois: import logging import logging.handlers import logging.config
Je vois qu'il est là dans ce morceau de code, mais est-il possible que visual studio est en cours d'exécution d'une précédente (mise en cache?) la version du fichier? Avez-vous essayé sans le import logging? Je peux courir sans et je ne suis pas sûr que le haut niveau module est appelé.
Oh, je crois que je vois ce que tu veux dire à propos de la possibilité qu'une autre version en cache en cours d'exécution. Ce module vous voir dans l'extrait de code est en fait un processus enfant d'un autre module. Le module parent a également import logging. Pensez-vous que je devrais supprimer l'un dans le processus de l'enfant?
Je ne suis pas sûr de ce que tu veux dire par un parent et enfant (deux séparée des modules python? parent.py et child.py?) Ce qui se passe lorsque vous essayez sans l'importation de journalisation dans le processus de l'enfant? Le message d'erreur indique qu'il essaye d'utiliser une configuration de l'attribut dans le module de journalisation, de l'exploitation forestière.config.

OriginalL'auteur Alain | 2013-08-07