Après avoir installé avec awscli avec pip et exécuté aws --version, ou toute autre commande aws, je reçois cette erreur :
/Utilisateurs/
print '%(name)s: %(endpoint)s' % {
^
ErreurDeSyntaxe: Syntaxe invalide
La fonction entière de cette erreur est la suivante :
def list_regions(service):
"""
Répertorier les régions pour le service
"""
pour la région dans service.regions() :
print '%(name)s: %(endpoint)s' % {
'nom' : région.nom,
'endpoint' : région.endpoint,
}
J'utilise un environnement anaconda, avec python 2.7. Cependant, il semble que main.py s'exécute sous python 3.6 à partir de l'erreur. J'ai également essayé d'installer et d'exécuter dans mon environnement habituel avec 3.6 et j'ai également eu la même erreur.
Je ne vois pas cette fonction list_regions
dans la base de code. Cela semble être un code personnalisé quelconque.
Si vous utilisez Python 3, print
doit avoir des parenthèses. Certains détails peuvent être trouvés dans cette réponse SO .
Cela semble être un problème avec autre chose que cette base de code. Le nom importable pour cet outil est awscli
non aws
Laisser ceci ici au cas où quelqu'un tomberait sur cela via google comme moi:
J'ai eu le même problème avec le même environnement (environnement anaconda avec python 3.6). Il s'agit en fait d'un package différent, nommé "aws" de manière confuse, qui génère l'erreur : https://github.com/eofs/aws
Assurez-vous d'exécuter pip install awscli
, PAS pip install aws
. Vous voudrez peut-être confirmer quel package "aws" vous appelez via which aws
.
Supprimez le package aws avec pip uninstall aws
. Ensuite, installez awscli, pip install awscli
.
eze1981, ça a marché. Merci mon pote :)
J'ai installé AWSCLI à l'aide de la commande pip install awscli mais j'ai toujours cette erreur. Il a été résolu après la mise à niveau de l'aws avec la commande pip install --upgrade awscli
J'ai dû faire un --force-reinstall
après avoir oublié que j'avais déjà installé awscli
, installer aws
puis désinstaller aws
. Cela a supprimé le binaire aws
, d'où la nécessité du --force-reinstall
Dans mon cas, j'ai essayé toutes les options mises en surbrillance et cela a toujours entraîné la même erreur jusqu'à ce que je fasse ce qui suit :
aws
installé which aws
et rm le fichier.@HUU Merci mec, tu as sauvé ma journée 👍
Commentaire le plus utile
Laisser ceci ici au cas où quelqu'un tomberait sur cela via google comme moi:
J'ai eu le même problème avec le même environnement (environnement anaconda avec python 3.6). Il s'agit en fait d'un package différent, nommé "aws" de manière confuse, qui génère l'erreur : https://github.com/eofs/aws
Assurez-vous d'exécuter
pip install awscli
, PASpip install aws
. Vous voudrez peut-être confirmer quel package "aws" vous appelez viawhich aws
.