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
Version imprimable
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:
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:
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