Voici le code que j'ai:
import pygame
pygame.init()
Je suis très confus, car si j'essaie d'exécuter le fichier, il ne semble pas y avoir de problème, mais pylint dit ce qui suit:
E1101: Le module 'pygame' n'a pas de membre 'init'
J'ai minutieusement cherché une solution à cette "erreur". Dans tous les cas pertinents que j'ai trouvés, la solution consistait à m'assurer que je n'avais pas créé un autre fichier ou dossier portant le nom "pygame", car dans ce cas, je n'importerais que mon propre fichier ou dossier . Cependant, Je n'ai pas créé de dossier ou de fichier portant un nom même proche de "pygame", je ne sais donc pas quel est le problème.
Comme je l'ai dit plus tôt, il semble que je puisse exécuter le fichier sans problème, mais je suis un novice dans ce domaine. De telles erreurs me déroutent dans mon processus d'apprentissage.
J'écris du code dans Visual Studio Code, j'utilise python 3.6, j'utilise pygame 1.9.3 et j'ai mis à jour mon pylint. Toute aide serait appréciée.
Si vous avez du code VS, allez dans votre dossier .vscode> settings.json ou recherchez python.linting.mypyArgs Sous l'onglet des paramètres de l'utilisateur, collez-y entre des accolades
"python.linting.pylintArgs": [
"----extension-pkg-whitelist=1xml"
]
Je ne vois plus l'erreur pyinit.
Résumer toutes les réponses . Ceci est une mesure de sécurité pour ne pas charger les extensions C autres que celles par défaut.
Ouvrez les paramètres utilisateur et ajoutez les éléments suivants entre {}:
"python.linting.pylintArgs": [
"--extension-pkg-whitelist=extensionname" // comma separated
]
Ouvrez les paramètres utilisateur et ajoutez les éléments suivants entre {}:
"python.linting.pylintArgs": [
"--unsafe-load-any-extension=y"
]
Merci Richard et Nearoo.
Je trouve une réponse et ça marche vraiment pour moi ... Voir la réponse acceptée et changez-la en extension-pkg-whitelist=lxml
pylint 1.4 rapporte E1101 (aucun membre) sur toutes les extensions C
Cette réponse inclut la réponse à votre question. En bref, cela explique:
Pylint importe des modules pour identifier efficacement les méthodes et les attributs valides. Il a été décidé que l'importation d'extensions c qui ne font pas partie de python stdlib constitue un risque pour la sécurité et pourrait introduire un code malveillant.
et comme solution, il mentionne entre autres:
Désactivez la sécurité en utilisant le paramètre
.pylintrc
unsafe-load-any-extensions=yes
.
Voir ici pour plus d’informations sur pylint.rc
. La méthode la plus rapide consiste simplement à créer le fichier .pylintrc
dans votre répertoire de projet ou votre répertoire de base.
Vérifiez si vous avez créé un fichier python nommé pygame.py
dans votre répertoire.
J'ai eu le même problème lorsque j'ai commencé à utiliser Visual Studio Code avec Python. Cela n'a rien à voir avec le fait d'avoir un autre pygame.py ou de ne pas l'installer correctement. Cela tient au fait que Visual Studio Code prend votre code littéralement et, comme vous ne pouvez pas importer pygame.init (), il pense que ce n'est pas un module correct. Pour résoudre ce problème, ouvrez settings.json (allez dans vos paramètres, puis cliquez sur l'icône {}
) et collez-y "python.linting.pylintArgs": [
"----extension-pkg-whitelist=1xml"
]
.