Suite de la nuit dernière. 【Mise en garde】 ["Cours de formation de scientifique des données à l'Université de Tokyo"](https://www.amazon.co.jp/%E6%9D%B1%E4%BA%AC%E5%A4%A7%E5%AD%A6%E3 % 81% AE% E3% 83% 87% E3% 83% BC% E3% 82% BF% E3% 82% B5% E3% 82% A4% E3% 82% A8% E3% 83% B3% E3% 83 % 86% E3% 82% A3% E3% 82% B9% E3% 83% 88% E8% 82% B2% E6% 88% 90% E8% AC% 9B% E5% BA% A7-Python% E3% 81 % A7% E6% 89% 8B% E3% 82% 92% E5% 8B% 95% E3% 81% 8B% E3% 81% 97% E3% 81% A6% E5% AD% A6% E3% 81% B6 % E3% 83% 87% E2% 80% 95% E3% 82% BF% E5% 88% 86% E6% 9E% 90-% E5% A1% 9A% E6% 9C% AC% E9% 82% A6% Je vais lire E5% B0% 8A / dp / 4839965250 / ref = tmm_pap_swatch_0? _ Encoding = UTF8 & qid = & sr =) et résumer les parties que j'ai des doutes ou que je trouve utiles. Par conséquent, je pense que le synopsis sera simple, mais veuillez le lire en pensant que le contenu n'a rien à voir avec ce livre.
Les opérateurs et les opérations sont résumés pour référence. 【référence】 Introduction de Tohoho aux opérateurs Python
Le code Python s'exécute de haut en bas. Syntaxe pour modifier le flux et effectuer un branchement conditionnel et un traitement itératif
print(1 == 1)
print(1 == 2)
print(1 != 2)
print(1 > 0)
print(1 > 2)
print((1 > 0) and (10 > 5))
print((1 < 0) or (10 > 5))
print(not (1 < 0))
print(not (1 < 0))
print(not (1 < 0) and (10 > 5))
print(not (1 < 0) and not (10 > 5))
print(5 >= 50 or 5 < 20 and 5 == 5)
print((5 >= 50 or 5 < 20) and 5 == 5)
résultat
True
False
True
True
False
True
True
True
True
False
True
True
【référence】 Illustration! Explication approfondie de la façon de spécifier plusieurs conditions avec et et ou dans l'instruction if de Python! Pour référence, le code ci-dessous est «Faux».
x = 5
y = 5
if x >= 50 or x < 20 and y == 5:
print("Vrai.")
else:
print("Faux.")
Raison; et a priorité sur et Cependant, dans la priorité actuelle de l'opérateur dans Python3, ou a la priorité sur et, et il devient True. 【référence】 6.17. Operator precedence (Partiellement cité)
Operator | Description |
---|---|
:= | Assignment expression |
lambda | Lambda expression |
if – else | Conditional expression |
or | Boolean OR |
and | Boolean AND |
not x | Boolean NOT |
in, not in, is, is not, <, <=, >, >=, !=, == | Comparisons, including membership tests and identity tests |
^ | Bitwise XOR |
& | Bitwise AND |
... | ... |
De base
si expression conditionnelle 1:
`Traitement à effectuer lorsque l'expression conditionnelle 1 est True`
expression conditionnelle elif 2:
`Traitement à effectuer lorsque l'expression conditionnelle 1 est False et que l'expression conditionnelle 2 est True`
expression conditionnelle elif 3:
`Expression conditionnelle 1,Traitement à effectuer lorsque 2 est False et que l'expression conditionnelle 3 est True`
...
else:
`Traitement à effectuer lorsque toutes les expressions conditionnelles sont False`
Dans l'expression conditionnelle de l'instruction if en Python, les objets suivants sont considérés comme faux False.
・ Type booléen Faux
· Aucun
・ Valeur numérique (type int ou type float) 0, 0.0
・ Chaîne de caractères vide''
· Conteneurs vides (listes, tapples, dictionnaires, etc.)[], (), {}
Tout le reste est considéré comme vrai Vrai.
Jusqu'à présent, cité de la référence suivante 【référence】 Comment écrire une branche conditionnelle par instruction if en Python
data_list = [1,2,3,4,5,6,7]
findvalue = 8
if findvalue in data_list:
print('{}Est inclus'.format(findvalue))
else:
print('{}N'est pas inclu'.format(findvalue))
print('trouver la valeur est{}était'.format(findvalue))
résultat La dernière ligne d'impression est toujours imprimée en dehors de l'instruction if.
8 n'est pas inclus
trouver la valeur était 8
【référence】 [Introduction à Python] Comment écrire une chaîne de caractères avec la fonction format En regardant la référence, je vais essayer la notation qui me semble intéressante.
apple = 50
orange = 100
total = apple + orange
print('pomme:{0}Yen mikan:{1}Total en yens:{2}Cercle'.format(apple, orange, total))
print('pomme:{}Yen mikan:{}Total en yens:{}Cercle'.format(apple, orange, total))
list1 = [apple, orange] #Créer une liste
list2 = [total]
print('pomme:{0[0]}Yen mikan:{0[1]}Total en yens:{1[0]}Cercle'.format(list1,list2))
print('pomme:{0[0]}Yen mikan:{0[1]}Total en yens:{1}Cercle'.format(list1,list2[0]))
print('pomme:{}Yen mikan:{}Total en yens:{}Cercle'.format(list1[0],list1[1],list2[0]))
Pommes: 50 yens Mikan: 100 yens Total: 150 yens
Pommes: 50 yens Mikan: 100 yens Total: 150 yens
Pommes: 50 yens Mikan: 100 yens Total: 150 yens
Mikan: 100 yens Pomme: 50 yens Total: 150 yens
Pommes: 50 yens Mikan: 100 yens Total: 150 yens
La notation pour les virgules flottantes est souvent utilisée, alors voyez ci-dessous. 【référence】 Format de chaîne Python (comment utiliser la méthode de format)
line = "{0}Est grand{1:.0f}cm, poids{2:.1f}C'est kg.".format("Yamada", 190, 105.3)
print(line)
line = "{1}Est grand{2:^10,.5f}mm, poids{3:.0f}C'est kg.".format("Yamada","Montagne", 1900, 105.3)
print(line)
résultat
M. Yamada mesure 190 cm et pèse 105.C'est 3 kg.
La taille de M. Yama est de 1,900.Il mesure 00000 mm et pèse 105 kg.
{2:^10,.5f} | 1,900.00000 |
---|---|
2 | index |
: | Début du format |
^ | Position de sortie |
10 | Largeur de sortie |
, | Dans mille lieux, |
.5 | 5 chiffres après l'affichage de la virgule décimale |
f | Nombre à virgule flottante |
Les trois types d'instructions for suivants sont souvent utilisés (valeur numérique, type de liste, type de dictionnaire)
Ce qui suit est normalement passé de 0 à 10. Le calcul est une addition. Il est émis à chaque fois. range (0,11,1); range (valeur initiale, valeur finale + 1, intervalle)
s=0
for i in range(0,11,1):
s += i
print(s)
résultat
0
1
3
6
10
15
21
28
36
45
55
s=0
list1 = [0,1,2,3,4,5,6,7,8,9,10]
for i in list1:
s += i
print(s)
résultat
0
1
3
6
10
15
21
28
36
45
55
dict_data = {'apple':100,'banana':100,'orange':300,'mango':400,'melon':500}
for dict_key in dict_data:
print(dict_key,dict_data[dict_key])
résultat
apple 100
banana 100
orange 300
mango 400
melon 500
Obtenez la clé et la valeur du type de dictionnaire avec dict_data.items () et la sortie
dict_data = {'apple':100,'banana':100,'orange':300,'mango':400,'melon':500}
for key, value in dict_data.items():
print(key,value)
résultat
apple 100
banana 100
orange 300
mango 400
melon 500
data_list = [1,2,3,4,5,6,7,8,9]
data_list1 = []
data_list1 = [i*2 for i in data_list]
print(data_list1)
résultat
[2, 4, 6, 8, 10, 12, 14, 16, 18]
Sortie uniquement lorsque i% 2 == 0 (le reste lorsque i est divisé par 2 est 0)
print([i*2 for i in data_list if i%2==0])
[4, 8, 12, 16]
Lorsqu'il y a deux listes comme indiqué ci-dessous, les éléments peuvent être extraits dans l'ordre de chaque liste.
list1 = ['apple','banana','orange','mango','melon']
list2 = [100, 100, 300, 400, 500]
for one, two in zip(list1, list2):
print(one, two)
résultat À propos, si le nombre d'éléments ne correspond pas, la sortie est effectuée selon le plus petit nombre depuis le début.
apple 100
banana 100
orange 300
mango 400
melon 500
dict_new = {}
list1 = ['apple','banana','orange','mango','melon','pinapple']
list2 = [100, 100, 300, 400, 500]
for one, two in zip(list1, list2):
dict_new.update({one: two})
print(dict_new)
print(type(dict_new))
résultat
{'apple': 100, 'banana': 100, 'orange': 300, 'mango': 400, 'melon': 500}
<class 'dict'>
list1 = ['apple','banana','orange','mango','melon','pinapple']
list2 = [100, 100, 300, 400, 500]
for i, name in enumerate(list1):
print(i, name)
résultat
0 apple
1 banana
2 orange
3 mango
4 melon
5 pinapple
Spécification d'index de démarrage
for i, name in enumerate(list1, 3):
print(i, name)
résultat
3 apple
4 banana
5 orange
6 mango
7 melon
8 pinapple
Zip list1 et list2 et ajoutez un index.
for i, name in enumerate(zip(list1, list2)):
print(i, name)
résultat
0 ('apple', 100)
1 ('banana', 100)
2 ('orange', 300)
3 ('mango', 400)
4 ('melon', 500)
num = 0
s = 0
while num <= 10:
s += num
print(s)
num += 1
résultat
0
1
3
6
10
15
21
28
36
45
55
Le résultat du code ci-dessous est le même que ci-dessus, mais tandis que 1: est toujours vrai, démontrant le rôle de la continuation du coton et de la rupture de rupture.
num = 0
s = 0
while 1:
if num <= 10:
s += num
print(s)
num += 1
continue
break
Soit dit en passant, s'il n'y a pas de suite, cela se terminera à 0, et s'il n'y a pas de pause, le processus ne se terminera pas. De plus, si les deux ne sont pas disponibles, le processus ne se terminera pas.
・ Branchement conditionnel et règles ・ Si instruction, pour instruction, notation d'inclusion, fonction zip, fonction énumération, tandis que l'instruction est résumée.
Il est facile de comprendre si vous revenez à l'essentiel et que vous les disposez côte à côte.