Bonjour,
comment je peut trier 2 types de variables: des tuples et des chaines de caracteres. En fait pour chaque variable que je recois j'aimerai dire si c'est un tuple ou alors juste une chaine de caractere
Bonjour,
comment je peut trier 2 types de variables: des tuples et des chaines de caracteres. En fait pour chaque variable que je recois j'aimerai dire si c'est un tuple ou alors juste une chaine de caractere
C’est tout simple, tu utilises une des fonctions builtins isinstance, issubclass ou type*:
Dans ton cas, isinstance me semble l’idéal –*issubclass est plus général, car il renvoie aussi True si le type en premier argument est une sous-classe du deuxième argument…
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 string = "test" tpl = (1,2,3,"test") type(string) == str # True type(tpl) == tuple # True type(tpl) == str # False isinstance(string, str) # True isinstance(string, tuple) # False isinstance(tpl, tuple) # True issubclass(type(string), str) # True issubclass(type(tpl), tuple) # True issubclass(type(tpl), str) # False
Bonsoir,
Pourquoi isinstance ?
@+
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 >>> detypetuple = tuple >>> detypestr = str >>> a = 'abcde' >>> b = (1, 2) >>> type(a) == detypetuple False >>> type(a) == detypestr True >>> type(b) == detypetuple True >>> type(b) == detypestr False
Partager