False, True =0,1 #problème
Salut
J'ai un problème avec bool et int, je m'explique, j'ai fait une fonction pour ajouter des nombre de type (int ou str) dans un fichier texte comme suit
Code:
1 2 3 4 5 6 7 8
| def add_nbr(nbr):
if isinstance(nbr,'int') or isinstance(nbr,'str'):
nbr_file = open('M:\\nbrfile.txt','w')
nbr_file.write(nbr)
nbr_file.close()
return True
else:
raise "Type argument incorrect %s" % (type(nbr)) |
Execution
Code:
1 2
| >>>add_nbr(5) # :P
True |
Mais
Code:
1 2 3
|
>>>add_nbr(True) # :( - False =0 et True = 1 logique
True |
que faire?
J'ai fait une fonction qui me donne le type de la variable sous forme de 'int', 'str' et 'bool'
Code:
1 2 3 4
| def typeof(var):
type_var = type(var)
split_type_var = str(type_var).split("'")
return split_type_var[1] |
Code:
1 2
| if typeof(nbr) not in ['str','int']:
raise "Type argument invalide (int ou str), erreur %s" % (type(nbr)) |
Existe-il un autre moyen pour faire ça?
Merci
Z