Explication détaillée et solution au problème de str n'est pas appelable en Python
Question posée :
Dans le code Python, lors du processus en cours, un message d'erreur a été rencontré :
Code Python :
def check_province_code(province, country): num = len(province) while num <3: province = ''.join([str(0),province]) num = num +1 return country + province
Message d'erreur en cours d'exécution :
check_province_code('ab', '001') --------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-44-02ec8a351cce> in <module>() ----> 1 check_province_code('ab', '001') <ipython-input-43-12db968aa80a> in check_province_code(province, country) 3 4 while num <3: ----> 5 province = ''.join([str(0),province]) 6 num = num +1 7 TypeError: 'str' object is not callable
Analyse et dépannage du problème :
D'après l'analyse du message d'erreur, str n'est pas un objet appelable, mais il aurait effectivement pu être appelé auparavant. Dans le document de l'API Python, c'est une fonction intégrée de Python. Pourquoi ne peut-il pas être utilisé ?
Continuons à le vérifier.
Exécutez str(123) sur la ligne de commande pour convertir le nombre en chaîne :
>>> str(1233) --------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-45-afcef5460e92> in <module>() ----> 1 str(1233) TypeError: 'str' object is not callable
Maintenant, le problème est clairement défini. Il s'avère qu'il n'y en a pas. str.Attention Après y avoir réfléchi, il s'est avéré que lors de la définition de la variable, str était utilisée de manière aléatoire, donc la fonction str était écrasée. Opérations effectuées similaires aux suivantes :
str = '123'
Restaurer la fonction str par défaut
Redémarrez l'application python et supprimez la partie de code où str est écrasée.
Résumé
Il existe de nombreuses fonctions et classes intégrées à python. Lorsque vous définissez vous-même des variables, n'oubliez pas de ne pas écraser ou répéter leurs noms.
Merci d'avoir lu, j'espère que cela pourra vous aider, merci pour votre soutien à ce site !
Pour des explications plus détaillées et des solutions au problème de str n'est pas appelable en Python, veuillez faire attention au site Web PHP chinois !