Ma compréhension est que la dernière version de Pylint (1.0.0 au moment de la rédaction de ce document) prend en charge Python 3, mais je ne peux pas le faire fonctionner sur Ubuntu 13.04 64 bits avec Python 3.3.
J'ai suivi les instructions d'installation sur le site PyPi , et Pylint 1.0.0 semble être installé avec succès ( pylint --version
renvoie pylint 1.0.0), et fonctionne avec le code Python 2.7, mais il signale une erreur de syntaxe lorsqu'il voit des instructions non locales et autres.
Ce qui donne? Existe-t-il des instructions d'installation spéciales pour Pylint sur Ubuntu?
sudo apt install pylint3
.Le commentaire de @sayth à la réponse acceptée est ce qui m'a attiré ici - j'écris des scripts python 2 et python 3, et je veux pouvoir vérifier les deux par rapport au jeu de règles correct. l'installation de pylint en utilisant
pip3 install pylint
écrit un court script dans/usr/local/bin
lequel invoque l'interpréteur python3, et semble donc supposer que tous les fichiers à vérifier sont des scripts python 3.pour contourner ce problème, j'ai maintenant les fichiers suivants:
~/bin/pylint2
:et
~/bin/pylint3
:et puis, parce que j'aime utiliser pylint directement depuis le menu "Build Commands" de Geany, et que je ne peux pas spécifier de commandes différentes pour les scripts python 2 et python 3, j'ai aussi
~/bin/pylint
:qui envoie la version correcte en reniflant le shebang.
Pas parfait, certes, mais fonctionnel et, peut-être, utile pour les autres.
la source
L'écosystème de pylônes a changé depuis (après que cette question a été posée), et il existe maintenant un pylône distinct pour python3. Il peut être installé avec:
sudo apt install pylint3
A travaillé pour moi sur Ubuntu 16.04.2 LTS
la source
Comme autre méthode pour exécuter pylint sur Python 2 et 3, notez que vous pouvez utiliser le
-m
commutateur Python pour exécuter un module installé sur le système dans la version actuelle de Python, vous pouvez donc fairepour sélectionner explicitement celui que vous voulez. Vous pouvez en faire des alias ou des scripts shell si vous le souhaitez.
la source
La racine du problème est que pylint devrait venir avec des scripts de console de point d'entrée pour / usr / local / bin / pylint2 et / usr / local / bin / pylint3. Cela devrait être considéré comme un bug.
Ce qui suit ne fonctionne pas ; il exécute toujours pylint2:
Voici ce que j'ai utilisé avec succès:
la source
Ceci est en réponse à la bonne réponse de Simon. Je viens d'y penser différemment et j'ai pensé que cela pourrait être utile pour ceux qui recherchent des solutions pour plusieurs versions de python / pylint.
L'installation de pylint pour 3.x et le maintien de 2.7 par défaut ou vice versa se font facilement en utilisant virtualenv.
Créez votre environnement virtuel. dans votre env tout en course activée
ici, vous pouvez ensuite déterminer où votre env a mis votre python et votre pylône en
et alors
Ensuite, il suffit de configurer votre idée pour utiliser ce chemin de peluchage et / ou chemin de python. Je sais que cela fonctionne avec Sublime3, je vais donc l'utiliser dans l'exemple ci-dessous.
dans Sublime dans le menu d'en-tête supérieur, sélectionnez Préférences> Paramètres du package> Pylinter> Paramètres - Utilisateur.
C'est juste un objet json. Met le
Enregistrez le fichier. Je fais également une copie du fichier et le garde dans ce répertoire venv afin que je puisse facilement basculer en copiant et collant cette configuration lorsque j'ai besoin de ce linter. Lorsque je ne le fais pas, je réinitialise simplement les paramètres Pylinter.sublime sur la valeur par défaut pour l'utilisateur et cela semble être la manière la plus simple que j'ai trouvée. Désolé, je ne connais pas les commandes Windows ou je les aurais mises dedans.
la source