#!/usr/bin/python
str = "this"
if(1):
print "Hi"
else:
print str.any_random_function()
Ceci n'échoue pas lorsque j'exécute le programme. J'ai essayé py_compile mais cela n'indiquait pas non plus l'erreur dans la boucle 'else'. Maintenant, comment puis-je compiler le programme et détecter les erreurs de manière fiable dans le code python?Comment puis-je vérifier les erreurs de compilation en python?
Merci.
Je ne pense pas que ce soit possible en python. Les méthodes peuvent être ajoutées de manière dynamique, l'exception capturée ou la méthode __getattr__ surchargée. Dans tous ces cas, votre erreur dépendra totalement des informations d'exécution. – fserb
En fait, cet exemple particulier devrait être attrapé par pylint. – Geo
Il ne manque pas parce que ce n'est pas faux. Votre module pourrait être importé dans un contexte où 'any_random_function' est correctement défini pour la classe de chaînes intégrée. –