Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente | |||
divers_expr_reg [2008/12/11 14:37] tyrtamos |
divers_expr_reg [2008/12/11 18:37] tyrtamos |
||
---|---|---|---|
Ligne 121: | Ligne 121: | ||
* si en plus je veux reconnaître des nombres écrits en français (avec la virgule), il suffit que je remplace le point par une virgule dans le motif. | * si en plus je veux reconnaître des nombres écrits en français (avec la virgule), il suffit que je remplace le point par une virgule dans le motif. | ||
+ | \\ | ||
+ | Et voilà une fonction qui, à partir d'une chaine, renvoie un entier, un entier long, un flottant ou False (d' | ||
+ | |||
+ | <code python> | ||
+ | def numbereval(x): | ||
+ | if re.match(r" | ||
+ | if x!="" | ||
+ | return long(x[: | ||
+ | else: | ||
+ | return int(x) | ||
+ | elif re.match(r" | ||
+ | return float(x) | ||
+ | else: | ||
+ | return False | ||
+ | </ | ||
+ | |||
+ | Cette fonction détecte un entier long de 2 façon différentes: | ||
+ | |||
+ | * si l' | ||
+ | |||
+ | * si l' | ||
+ | |||
+ | Et voilà le code pour le tester: | ||
+ | |||
+ | <code python> | ||
+ | while True: | ||
+ | y = numbereval(raw_input(' | ||
+ | if y: | ||
+ | print type(y), y | ||
+ | else: | ||
+ | print u"ce n'est pas un nombre" | ||
+ | </ | ||
+ | |||
+ | \\ | ||
+ | Amusez-vous bien! | ||