Vous pouvez vous rendre sur l'espace dédié aux généralités sur python : Espace python 1
Nous avons manipulé des variables avec des types simples : int, bool, float, str. Ce sont des conteneurs ne contenant qu'une valeur.
Nous avons manipulé aussi, sans vraiment l'étudier, des types construits ( ou types abstraits) : liste,
tuple.
Ces types de données s'appellent des séquences
.
Dans ce cours nous allons étudier deux types de séquence
: les tableaux et les p-uplets.
En python, les tableaux s'appellent les listes et les p-uplets s'appellent les tuples.
Séquence
Famille indexée d'éléments par les entiers strictement positifs inférieurs ou égaux à un certain entier, ce dernier étant appelé « longueur » de la séquence. Il faut rapprocher ce mot au concept de suite en mathématiques.
En informatique, un tableau
est une structure de données représentant une séquence
finie d'éléments auxquels on peut accéder efficacement par leur position, ou indice, dans la séquence. C'est
un type de conteneur
que l'on retrouve dans un grand nombre de langages de programmation.
En Python, une séquence est une collection ordonnée d’objets qui permet d’accéder à ses éléments par leur numéro de position dans la séquence. Les listes et les tuples sont des séquences.
Il y a des points communs et des différences entre ces deux types.
p-uplet, tuple en python
Un p-uplet est une séquence immutable. C'est à dire une suite indexée de valeurs (de n'importe quel type) que l'on ne peut pas modifier.
En Python, un p-uplet est de type tuple.
Construire un objet tuple en python.
Un tuple est défini à l'aide de parenthèses.
tup1=()
tup2=(3,) # tuple avec un seul élément
tup3=(1,4,5,'moto',4.6)
type(tup1) # pour accéder au type de l'objet
Vous avez à disposition un "bac à sable" pour vos tests.
Vous pouvez également utiliser jupyter ou la méthode qui vous convient le plus.
Il est important d'alimenter son cahier de bord.
accéder à un élément
Soient i
un entier et t
un tuple
i
d'un tuple t
on écrit
t[i]
t
en Python est accessible avec l'index -1
t[-1]
t[i:j+1]
pour afficher les élément de deux en deux on pourra écrire :
t[i:j+1:2]
on donne le tuple suivant : tup=(1,4,5,'moto',(12,'nsi','génial'),4.6)
Ecrire les lignes de code qui affiche :
Un tuple est un objet immutable : on ne peut pas réaffecter ses éléments, supprimer un élément ou encore en ajouter.
Tester ces deux lignes de codes :
tup=(1,4,5,'moto',4.6)
tup[3]='vive la moto !'
Un tuple est itérable. Cela signifie que l'on peut organiser une itération (boucle for) sur cette structure.
Tester les exemples suivants :
tup=(5,4,2,8,"moto")
for elt in tup : # méthode 1, elt prend à chaque tour les éléments de la séquence
print(elt) # print est utilisée à des fins d'observation de code
for i in range(len(tup)): # méthode 2, on parcourt les indices de la séquence
print(tup[i])
Opérations/méthodes | Description |
Méthodes et opérations communes aux listes et tuples. | |
x in s |
Renvoie True si un élément de s est égale à x, False sinon |
x not in s |
Renvoie True si aucun un élément de s n'est égale à x, False sinon |
len(s) |
Renvoie le nombre d'éléments de s |
s == s1 |
Renvoie True si s et s1 sont de même type, ont la même longueur,et ont des éléments égaux deux à deux. |
s[i] |
Renvoie l'élément d'indice i de s. Le premier élément a pour indice 0. |
s[i:j] |
Renvoie une partie de l'indice i à j non inclus |
s.index(x) |
Renvoie l'indice de la première apparition de x dans s |
s.count(x) |
Renvoie le nombre d'apparitions de x dans s |
s+t |
Renvoie une nouvelle séquence concaténation de s et t. |
n*t |
Renvoie une nouvelle séquence composée de la concaténation de t avec lui même n fois. |
En utilisant le code ci-dessous, vous utiliserez les méthodes et les opérations du tableau pour tester les différentes questions :
jours_1=('lundi','mardi','mercredi','jeudi','vendredi')
jours_2=('samedi','dimanche')
# Tester si samedi est un élément de jours_1
# Donner la longueur de jours_2
# Tester si jours_1 est égal à jours_2
# Donner le deuxième élément de jours_1
# Donner la partie de jours_1 entre le deuxième élément et le quatrième élément
# renvoyer l'indice de dimanche dans jours_2
# Renvoyer le nombre de samedi dans jours_2
# Créer un tuple semaine par concaténation de jours_1 et de jours_2
En utilisant un parcours de tuple avec la présence d'un indice, écrire une fonction
est_dans(element,tple)
qui en argument reçoit un entiers ( élément) et un tuple d'entier (
tple) qui renvoie un booleen indiquant la présence de élément dans tple.
on testera la fonction sur les scripts suivants :
est_dans(4,(1,2,3,4,5,6))
qui devrait renvoyer True
est_dans(9,(1,2,3,4,5,6))
qui devrait renvoyer False
import random
tple=(random.randint(1,1000) for i in range(1000)
est_dans(400,tple)
Avez vous tous le même retour?
En Python, une fonction qui renvoie plusieurs éléments ( ex : return a,b,c ) renvoie un tuple.
def milieu(xA,yA,xB,yB) -> tuple:
"Formule qui renvoie les coordonnées du milieu d'un segment"
return (xA+xB)/2, (yA+yB)/2
type(milieu(1,3,-1,2))
En utilisant milieu(1,3,-1,2), comment afficher seulement l'abscisse ? L'ordonnée ?
Ecrire une fonction triangle_rect(n)
qui renvoie un tuple ou chaque élément est un tuple de
longueur trois. Ces tuples sont constitués de trois entiers a, b,c tels que $0<a\leq b\leq c < n$ et
le triangle de cotés $a$,
$b$ et $c$ soit rectangle.
Tableau
Un tableau est une séquence mutable.
type list en Python
Une liste en Python est une séquence mutable de longueur variable.
Nous avons déjà rencontré la notion de tableau en javascript avec la commande array.
On peut appliquer aux listes toutes les méthodes, fonctions et opérations des tuples.
une liste est définie à l'aide de crochets.
Pour initialiser en mémoire une liste vide on écrira : l=[]
Tester les exemples suivants :
liste=[5,4,2,8,"moto"]
liste.append(35) # Ajout d'un élément à la fin de la liste
print(liste) # print est utilisée à des fins d'observation de code
liste[2]= 5 # Modification de l'élément d'indice 2
print(liste)
# reprendre les exemples du dessus avec un tuple
tup=(1,4,9,7,"moto",4.5)
# Vous allez rencontrer des messages d'erreur
La méthode append
permet d'ajouter à la fin d'une liste existante un élément. On
écrira :
l.append(element_a_ajouter)
liste=[3,8,"mot",True]
liste2=[] # Création d'une liste vide
liste2.append(4)
# Afficher la liste2
liste=[3,8,"mot",True]
liste1=[2*x for x in range(10)]
liste2=[2*x+1 for x in range(10)]
liste3=[x**2 for x in range(10)]
import math
liste4=[math.sqrt(x) for x in liste3]
# Afficher les différentes listes
Dans cet exercice, vous devez écrire deux scripts Python qui créent la liste des entiers de 0 à 10000 de deux méthodes différentes :
Tableaux et fonctions
Tester les exemples suivants :
def test(a :list)->list :
return [x**2 for x in a if x>0],[x for x in a if x>10]
a=[-4,-3,-2,0,1,5,9,11]
Opérations/méthodes | Description |
Méthodes et opérations communes aux listes et tuples. | |
x in s |
Renvoie True si un élément s est égale à x, False sinon |
x not in s |
Renvoie True si aucun un élément de s n'est égale à x, False sinon |
len(s) |
Renvoie le nombre d'éléments de s |
s == s1 |
Renvoie True si s et s1 sont de même type, ont la même longueur,et ont des éléments égaux deux à deux. |
s[i] |
Renvoie l'élément d'indice i de s. Le premier élément a pour indice 0. |
s[i:j] |
Renvoie une partie de l'indice i à j non inclus |
s.index(x) |
Renvoie l'indice de la première apparition de x dans s |
s.count(x) |
Renvoie le nombre d'apparitions de x dans s |
s+ t |
Renvoie une nouvelle séquence concaténation de s et t. |
n*t |
Renvoie une nouvelle séquence composée de la concaténation de t avec lui même n fois. |
Méthodes et opérations applicables aux listes (mais pas aux tuples). | |
s.append(x) |
Ajoute l'élément x à la fin de la liste s. |
s[i] = x |
Modifie la liste et affecte la valeur x à la case d'indice i. Attention, cette case doit exister. |
s.insert(i,v) |
Insère l'élément x dans s à l'indice i . Cette méthode décale les indices suivants. |
s.remove(x) |
Supprime de la liste le premier élément dont la valeur est égale à x |
s.pop(i) |
Enlève de la liste l'élément à la position i et renvoie sa valeur. En l'absence de i, c'est le dernier élément qui est supprimé et renvoyé |
s.sort() |
Modifie la liste s en la triant |
s.reverse() |
Modifie la listes en inversant l'ordre des éléments de s |
# -*- coding: utf-8 -*-
import random
liste=[random.randint(1,6) for i in range(1000)] # Comprendre la construction de cette liste
Ecrire un script Python qui renvoie une liste contenant le nombre de 1,2,3,4,5 et 6. (on utilisera la
méthode count
.)
Ecrire une fonction "count" sans "count"
compter(element,liste)
qui a pour arguments un entier (element) et
une
liste d'entiers (liste) qui renvoie le nombre d'occurrence de élément dans liste.Les éléments d'un tableau peuvent être également un tableau. Ce type d'objet rappelle un objet mathématiques que vous verrez plus tard qui s'appelle une matrice. Cet objet est utilisé dans de nombreux domaines, notamment dans le traitement des images. Une image est une matrice de pixels.
Matrices
On appelle matrice un tableau de tableaux dont chaque tableau à la même longueur.
Chaque élément d'une matrice A est noté $a_{i,j}$ où $i$ est le numéro de ligne et $j$ le numéro de colonne.
On représente une matrice de taille n,m en mathématiques ainsi :
$A = \begin{pmatrix} a_{1,1} & a_{1,2} & \cdots & a_{1,n} \\ a_{2,1} & a_{2,2} & \cdots & a_{2,n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{m,1} & a_{m,2} & \cdots & a_{m,n} \end{pmatrix}$
En Python, une matrice est une liste de listes de même longueur.
Pour accéder à un élément organisé en liste de liste, on utilise une notation avec un double crochets. Le premier indice pointe la ligne et le deuxième indice pointe la colonne.
Si notre matrice contient n listes de m éléments on peux la voir ainsi :
$List= \begin{pmatrix} List[0][0] & List[0][1] & \cdots & List[0][n-1] \\ List[1][0] & List[1][1] & \cdots & List[1][n-1] \\ \vdots & \vdots & \ddots & \vdots \\ List[m-1][0] & List[m-1][1] & \cdots & List[m-1][n-1] \end{pmatrix}$
Pour accéder à l'élément j de la ième liste de L on écrira :
L[i][j]
L=[[1,2,3,4],[5,6,7,8],[9,10,11,12]]
Ici , L[1][2]=7
L=[[1,2,3,4],[5,6,7,8],[9,10,11,12]]
Le premier élément de la liste L est la liste [1,2,3,4], pour l'afficher on écrit : L[0]
.
Le troisième élément de ce L[0] est 3, pour y accéder nous utiliserons L[0][2]
L[2][3]
.On peux se servir de données structurées en liste de listes sans que ce soit des matrices.
Ecrire une fonction matriceAlea(n:int,m:int)->list
Python qui renvoie une matrice à n lignes et m colonnes
d'entiers aléatoires entre 0
et 100.
Le but de cet exercice est de représenter un jeu de 32 cartes.
Un jeu de 32 cartes est composé de :
Le but est d'implémenter un jeu de 32 cartes et se doter de fonctions qui permettent interagir avec ce jeu.
creation_jeu32(couleur:tuple, valeur32:tuple)->list
docstring
, entre " "
, ou
entre
""" """
" (si l'aide fait plusieurs lignes).creation_jeu32(couleur:tuple, valeur32:tuple)->list
qui retourne un liste de 32 cartes.
melange(jeu:list)->list
qui renvoie le jeu de cartes
mélangé.carte_hasard(jeu:list)->tuple
main(nombre_cartes: int,jeu:list)->list:
qui renvoie une
main formée du nombre de cartes.
Il faut penser à retirer la main créée du jeu de 32 cartes.
On veut pouvoir comparer des cartes pour réaliser par exemple des jeux.
force(carte:tuple)->int:
qui renvoie la "force" de la carte.
jeu_force(jeu)
qui renvoie le jeu des cartes associées à leur force .compare(carte1:tuple,carte2:tuple,jeu_force:dict)->tuple
qui renvoie la carte avec la force la plus élevée.distance(carte1:tuple,carte2:tuple)->int
qui
renvoie la
"distance" entre deux cartes.Le prolongement de cette activité est la création d'un jeu (bataille, rami, blackjack, poker, pyramide, etc.). La création d'un jeu pourra être développée dans le cadre de votre projet.
Faire une recherche sur le web sur la notion de carré magique. Un carré magique d'ordre 3 est une matrice de 3 lignes et trois colonnes dont la somme des lignes, des colonnes et des diagonales fait le même nombre.
L=[ [2,7,6],
[9,5,1],
[4,3,8]]
Ecrire un script Python qui vérifie que ce carré est magique. Le prolongement de cet exercice est la recherche de carrés magiques à partir de carrés à compléter.
Python considère une phrase comme une séquence. Vous pouvez réaliser des essais avec cette citation célèbre du philosophe Confusius : "Je ne cherche pas à connaître les réponses, je cherche à comprendre les questions." De quelle type de séquence se rapproche-t-on? De la liste et/ou du tuple ? Faire des tests à partir de vos connaissances en python.
# -*- coding: utf-8 -*-
citation="Je ne cherche pas à connaître les réponses, je cherche à comprendre les questions."
# Quelques tests à faire :
citation[3]
citation[4]='z'
citation.append('!')
# En chercher d'autres
En utilisant la méthode count(elt)
, compter le nombre de 'a' dans la citation, le nombre de
'e', le nombre de voyelles, etc.
Il existe pour les listes des méthodes très intéressantes dans le traitement des chaines de caractères.
Ce sont les méthodes split()
et join()
. Observer le code proposé et réaliser
les affichages des listes créées.
Penser à également utiliser la commande type(variables) afin de vérifier le type des variables créées.
En utilisant ces principes, comment faire pour créer une liste de mots à partir de la chaine de caractères suivante : chaine="un,deux,trois,quatre,cinq" ?
Le fichier de correction sera disponible à la fin de la séquence.
On donne la liste suivante :
# Données sur la couleur des yeux
# marron = "m"
# bleu = "b"
# noisette = "n"
# verts = "v"
# gris = "g"
l=['m', 'n', 'g', 'm', 'b', 'b', 'g', 'm', 'v', 'm', 'b', 'n', 'm', 'n', 'v', 'm', 'm', 'b', 'm', 'm', 'm', 'm', 'b', 'm', 'm', 'm', 'm', 'm', 'm', 'm', 'm', 'm']
Quelle information pouvez vous extraire de cette liste? Comment organiser cette information?
Le dictionnaire , de type dict
en
Python, est une structure de données permettant d’associer des
valeurs à des clés.
C'est un type de conteneur
comme les list
et les tuple
mais ce
n'est pas une séquence
.
Au sens où les valeurs des tableaux ne sont pas indexés par des entiers.
Les clés peuvent être de type : str, entier, flottants, tuple ( à conditions que les tuples ne contiennent que des entiers, des flottants ou des n-uplets et pas des listes).
Les valeurs peuvent être de n'importe quel type.
A partir d’une clé, on peut alors accéder directement à la valeur qui lui est associée.
construire un objet dict en Python
Pour créer un dictionnaire, on écrit entre
des accolades les couples séparés par deux points :
, chaque couple étant composé d'une clé
et de la
valeur correspondante.
En Python, on écrira :
{clé1:valeur1,clé2:valeur2,....}
dico={"yes":"oui", "no":"non","and":"et", "nsi":"dansletop2despé", "maths":"dansletop2desspé"}
jours={1:"lundi",2:"mardi",3:"mercredi",4:"jeudi",5:"vendredi",6:"samedi",7:"dimanche"}
Balzac={'pnom':'Honoré de Balzac','nais':1799,'mort':1850,'romans':['Les Chouans','La Peau de chagrin','Les Contes drolatiques','Eugénie Grandet','Le Père Goriot','Le Colonel Chabert','Le Lys dans la vallée','Illusions perdues','Ursule Mirouët','La Cousine Bette','Le Cousin Pons']}
Pour chaque question déterminer si la structure proposée est un dictionnaire en identifiant les clés , les valeurs et leur type.
{"prénoms" : ["Jaime", "lansi","aimé","hans","aignan"], "âge" : 16,"1":2019}
{[1,2,3]:"triplet",[x,y]:"couple"}
{(1,2,3):"triplet",(x,y):"couple"}
{(10, 'trèfle'): 10, (9, 'trèfle'): 9, (8, 'trèfle'): 8, (7, 'trèfle'): 7}
Pour ajouter une couple de clé,valeur il suffit d'écrire :
d[nouvelle_clé]=nouvelle_valeur
On donne le dictionnaire suivant qui donne les résultats de Bob :
res={'nsi' :18,'maths':17,'svt':14,'français':14,'lv1':8,'physique':12,'HG':11}
Ajouter la moyenne de 12 en lv2.
const_dico(cle,valeur)
qui renvoie le dictionnaire définie par les
clés et les valeurs entrées en argument.
On donne des listes de certains joueurs de League Of Legend ainsi que leur classement et leur nombre de points :
pseudo=['Major Alexander','KBM Wiz', 'FNC MagiFelix','Avalanche','love camile','Nobody']
classement=[(12,1406),(1,1613),(4,1507),(9,1429),(16,1341),(11,1416)]
const_dico(cle,valeur)
sur les joueurs de LOL.Il existe divers procédés de construction d'un dictionnaire afin d'éviter d'ajouter les éléments un par un, en voila 2 exemples :
Comme avec les listes il est possible de construire des dictionnaire en compréhension.
Prenez le temps de lire et de comprendre et d'expliquer à l'écrit les lignes de script suivantes :
dico1={x:x**2 for x in range(1,5)}
jours='lundi','mardi','mercredi','jeudi','vendredi','samedi','dimanche'
dico={i+1:jours[i] for i in range(len(jours))}
Cryptographie
la fonction chr()
Pour cet exercice nous allons utiliser la fonction chr
de Python qui prend en
argument un entier (codé en décimal) et qui renvoie le caractère ASCII associé.
Voici une table ASCII
Décimal Octal Hex Binaire Caractère ------- ----- --- -------- ------ 000 000 00 00000000 NUL (Null char.) 001 001 01 00000001 SOH (Start of Header) 002 002 02 00000010 STX (Start of Text) 003 003 03 00000011 ETX (End of Text) 004 004 04 00000100 EOT (End of Transmission) 005 005 05 00000101 ENQ (Enquiry) 006 006 06 00000110 ACK (Acknowledgment) 007 007 07 00000111 BEL (Bell) 008 010 08 00001000 BS (Backspace) 009 011 09 00001001 HT (Horizontal Tab) 010 012 0A 00001010 LF (Line Feed) 011 013 0B 00001011 VT (Vertical Tab) 012 014 0C 00001100 FF (Form Feed) 013 015 0D 00001101 CR (Carriage Return) 014 016 0E 00001110 SO (Shift Out) 015 017 0F 00001111 SI (Shift In) 016 020 10 00010000 DLE (Data Link Escape) 017 021 11 00010001 DC1 (XON)(Device Control 1) 018 022 12 00010010 DC2 (Device Control 2) 019 023 13 00010011 DC3 (XOFF)(Device Control 3) 020 024 14 00010100 DC4 (Device Control 4) 021 025 15 00010101 NAK (Negative Acknowledgement) 022 026 16 00010110 SYN (Synchronous Idle) 023 027 17 00010111 ETB (End of Trans. Block) 024 030 18 00011000 CAN (Cancel) 025 031 19 00011001 EM (End of Medium) 026 032 1A 00011010 SUB (Substitute) 027 033 1B 00011011 ESC (Escape) 028 034 1C 00011100 FS (File Separator) 029 035 1D 00011101 GS (Group Separator) 030 036 1E 00011110 RS (Request to Send)(Record Separator) 031 037 1F 00011111 US (Unit Separator) 032 040 20 00100000 SP (Space) 033 041 21 00100001 ! (exclamation mark) 034 042 22 00100010 " (double quote) 035 043 23 00100011 # (number sign) 036 044 24 00100100 $ (dollar sign) 037 045 25 00100101 % (percent) 038 046 26 00100110 & (ampersand) 039 047 27 00100111 ' (single quote) 040 050 28 00101000 ( (left opening parenthesis) 041 051 29 00101001 ) (right closing parenthesis) 042 052 2A 00101010 * (asterisk) 043 053 2B 00101011 + (plus) 044 054 2C 00101100 , (comma) 045 055 2D 00101101 - (minus or dash) 046 056 2E 00101110 . (dot) 047 057 2F 00101111 / (forward slash) 048 060 30 00110000 0 049 061 31 00110001 1 050 062 32 00110010 2 051 063 33 00110011 3 052 064 34 00110100 4 053 065 35 00110101 5 054 066 36 00110110 6 055 067 37 00110111 7 056 070 38 00111000 8 057 071 39 00111001 9 058 072 3A 00111010 : (colon) 059 073 3B 00111011 ; (semi-colon) 060 074 3C 00111100 < (less than sign) 061 075 3D 00111101 = (equal sign) 062 076 3E 00111110 > (greater than sign) 063 077 3F 00111111 ? (question mark) 064 100 40 01000000 @ (AT symbol) 065 101 41 01000001 A 066 102 42 01000010 B 067 103 43 01000011 C 068 104 44 01000100 D 069 105 45 01000101 E 070 106 46 01000110 F 071 107 47 01000111 G 072 110 48 01001000 H 073 111 49 01001001 I 074 112 4A 01001010 J 075 113 4B 01001011 K 076 114 4C 01001100 L 077 115 4D 01001101 M 078 116 4E 01001110 N 079 117 4F 01001111 O 080 120 50 01010000 P 081 121 51 01010001 Q 082 122 52 01010010 R 083 123 53 01010011 S 084 124 54 01010100 T 085 125 55 01010101 U 086 126 56 01010110 V 087 127 57 01010111 W 088 130 58 01011000 X 089 131 59 01011001 Y 090 132 5A 01011010 Z 091 133 5B 01011011 [ (left opening bracket) 092 134 5C 01011100 \ (back slash) 093 135 5D 01011101 ] (right closing bracket) 094 136 5E 01011110 ^ (caret cirumflex) 095 137 5F 01011111 _ (underscore) 096 140 60 01100000 ` 097 141 61 01100001 a 098 142 62 01100010 b 099 143 63 01100011 c 100 144 64 01100100 d 101 145 65 01100101 e 102 146 66 01100110 f 103 147 67 01100111 g 104 150 68 01101000 h 105 151 69 01101001 i 106 152 6A 01101010 j 107 153 6B 01101011 k 108 154 6C 01101100 l 109 155 6D 01101101 m 110 156 6E 01101110 n 111 157 6F 01101111 o 112 160 70 01110000 p 113 161 71 01110001 q 114 162 72 01110010 r 115 163 73 01110011 s 116 164 74 01110100 t 117 165 75 01110101 u 118 166 76 01110110 v 119 167 77 01110111 w 120 170 78 01111000 x 121 171 79 01111001 y 122 172 7A 01111010 z 123 173 7B 01111011 { (left opening brace) 124 174 7C 01111100 | (vertical bar) 125 175 7D 01111101 } (right closing brace) 126 176 7E 01111110 ~ (tilde) 127 177 7F 01111111 DEL (delete)
Le chiffrement de César
A chaque lettre de l'alphabet on associe un nombre de à 0 à 25. On ajoute à ce nombre un nombre choisi par exemple 7. Le reste de la division euclidienne du nombre obtenue par 26 correspond au chiffre qui codera la lettre initiale.
la lettre Y est associée à 24, on lui ajoute 7 on obtient 31. Le reste de la division euclidienne de 31 par 26 est 5. Ce qui donne E. Y est donc codé par E.
a%b
Une fonction de codage
d
et tester :
d['A']
d['D']
d['E']
codage(mot)
qui prend en argument un chaine de
caractère écrit en lettre capitale et qui renvoie le mot codé par le chiffrement de
César.la fonction dict()
la fonction dict
permet la conversion d'une liste de listes à deux éléments en dictionnaire.
liste=[['a',1],['b',2],['c',3]]
d=dict(liste)
print(d)
Accéder aux valeurs associés à une clé
Pour accéder à la valeur d'une clé d'un dictionnaire d on écrit :
d[clé]
On donne le dictionnaire suivant :
Pour modifier une valeur d'une clé d'un dictionnaire d on écrit :
d[cle]=new_value
Modifier la couleur du pantalon de Bob dans ce dictionnaire :
pantalon_Bob={'tissu':'coton','taille':'40', 'couleur':'bleu'}
Pour connaitre la longueur d'un dictionnaire on utilise la fonction len
Déterminer le nombre d'éléments dans ce dictionnaire :
{0: 828, 1: 5418, 3: 469, 4: 306, 6: 833, 7: 7, 9: 3422, 2: 1690, 8: 7056, 5: 321, 18: 2333, 20: 850, 19: 798, 11: 7693, 17: 1730, 33: 782, 15: 3477, 32: 1443, 37: 475, 24: 287, 28: 1920, 42: 513, 14: 5040, 46: 1059, 25: 3464, 49: 1227, 21: 1813, 54: 2946, 41: 6034, 12: 4322, 43: 686, 51: 2917, 16: 6905, 53: 2028, 22: 2780, 10: 5907, 39: 4397, 67: 851, 71: 3434, 70: 3111, 13: 1341, 86: 18, 61: 3031, 29: 716, 79: 2302, 56: 4465, 72: 958, 66: 4054, 27: 495, 81: 4913, 82: 2831, 91: 377, 45: 1581, 73: 574, 88: 1910, 95: 4365, 93: 304, 90: 2093, 57: 2321, 38: 8675, 117: 4098, 102: 6831, 62: 256, 104: 1342, 77: 2893, 130: 2736, 97: 1041, 129: 646, 133: 20, 94: 3729, 44: 1212, 138: 4838, 84: 351, 144: 359, 123: 1448, 120: 5921, 121: 1069, 124: 668, 128: 1081, 131: 1197, 156: 189, 155: 859, 50: 1858, 69: 1725, 167: 246, 146: 3651, 35: 6752, 191: 1578, 34: 791, 194: 3051, 150: 1406, 184: 1364, 87: 5572, 175: 494, 36: 3235, 202: 5373, 192: 121, 98: 2694, 115: 5420, 75: 957, 105: 10, 85: 1551, 190: 136, 213: 235, 118: 5853, 127: 823, 188: 2109, 40: 7310, 136: 226, 110: 1287, 218: 279, 78: 1494, 76: 1841, 173: 8402, 199: 5806, 225: 3531, 180: 1438, 162: 2127, 109: 3003, 235: 5881, 114: 4217, 132: 3200, 206: 317, 176: 4538, 223: 1276, 119: 1600, 108: 659, 30: 922, 147: 199, 80: 1399, 169: 2468, 241: 60, 172: 557, 220: 4801, 134: 98, 219: 1146, 214: 2367, 205: 4218, 152: 525, 142: 3075, 245: 2401, 137: 51, 217: 1894, 242: 7900, 290: 5461, 141: 1247, 250: 695, 273: 1824, 296: 1800, 170: 2619, 286: 9, 247: 4060, 256: 353, 251: 1700, 259: 945, 221: 829, 203: 2027, 262: 1540, 149: 700, 293: 608, 107: 5829, 258: 7850, 271: 1207, 163: 1429, 92: 147, 212: 2910, 186: 5566, 151: 1003, 313: 4841, 89: 2728, 154: 6376, 348: 1191, 23: 2212, 335: 430, 356: 43, 358: 590, 230: 6334, 211: 898, 277: 452, 161: 841, 168: 129, 125: 1601, 243: 2820, 311: 2792, 249: 1466, 272: 4055, 330: 1299, 159: 576, 157: 2930, 386: 2810, 389: 4815, 379: 3097, 377: 847, 295: 862, 285: 1375, 236: 1345, 404: 3610, 216: 8192, 274: 413, 74: 2259, 349: 1875, 328: 998, 153: 65, 200: 530, 321: 1878, 164: 589, 395: 1132, 197: 1172, 68: 6773, 415: 422, 252: 5913, 158: 147, 196: 1787, 283: 1193, 351: 2880, 360: 1869, 276: 217, 233: 59, 337: 6050, 437: 2383, 418: 3354, 122: 3835, 160: 458, 446: 355, 255: 13, 231: 368, 408: 1725, 179: 5701, 346: 1454, 299: 3501, 65: 14, 442: 56, 350: 919, 479: 960, 470: 140, 116: 2912, 399: 2372, 315: 22, 398: 315, 246: 1208, 312: 4046, 339: 2770, 291: 6790, 427: 3705, 353: 44, 443: 4637, 368: 3565, 195: 3247, 491: 19, 198: 1425, 47: 1558, 177: 3139, 501: 5441, 310: 4506, 378: 1731, 322: 1807, 503: 5970, 344: 676, 317: 2853, 227: 52, 450: 2061, 465: 331, 181: 6971, 278: 1249, 325: 3146, 59: 1077, 508: 2119, 380: 1126, 60: 4877, 302: 265, 280: 195, 561: 3838, 371: 5452, 63: 4795, 459: 3125, 502: 150, 334: 545, 429: 1520, 536: 2219, 439: 212, 498: 300, 307: 2673, 309: 5929, 455: 1132, 208: 1018, 381: 2981, 563: 3124, 239: 841, 565: 6800, 268: 1489, 428: 3895, 373: 337, 581: 14, 528: 6910, 417: 827, 407: 200, 55: 4767, 435: 1462, 559: 184, 332: 431, 111: 254, 473: 3065, 432: 991, 338: 2581, 366: 295, 412: 786, 275: 690, 471: 2700, 588: 458, 165: 6977, 444: 2165, 265: 3861, 267: 364, 387: 575, 289: 3761, 363: 3604, 631: 2228, 591: 575, 620: 5228, 621: 307, 269: 1864, 341: 1006, 618: 960, 525: 1713, 320: 1089, 523: 1083, 485: 639, 558: 6136, 568: 3619, 468: 101, 361: 285, 319: 5785, 31: 7022, 282: 1295, 303: 139, 680: 2114, 556: 3681, 477: 119, 240: 3049, 511: 2677, 656: 6289, 643: 2507, 645: 1882, 667: 1236, 647: 3625, 560: 3871, 410: 3459, 100: 3950, 140: 8017, 318: 2918, 403: 1763, 608: 410, 687: 63, 719: 2760, 314: 979, 646: 161, 694: 1456, 326: 2761, 355: 1304, 597: 777, 396: 284, 718: 3212, 484: 1335, 478: 493, 281: 76, 518: 2971, 670: 859, 632: 677, 423: 2287, 745: 5276, 316: 3646, 106: 4412, 304: 1449, 182: 553, 547: 2914, 279: 447, 166: 1669, 411: 1129, 753: 3967, 658: 226, 391: 1141, 424: 29, 392: 3628, 514: 6545, 481: 486, 737: 181, 507: 433, 516: 5444, 720: 41, 204: 186, 531: 98, 426: 189, 524: 3908, 611: 4016, 774: 5919, 622: 4813, 769: 5808, 637: 5957, 571: 1045, 791: 788, 566: 737, 430: 2557, 749: 1253, 657: 2336, 689: 61, 400: 1408, 624: 9285, 832: 588, 449: 708, 590: 848, 210: 1130, 665: 4995, 287: 731, 284: 5399, 447: 97, 448: 4797, 843: 4778, 533: 452, 145: 1992, 472: 3485, 614: 212, 822: 1169, 603: 4481, 723: 1794, 780: 2045, 773: 661, 551: 450, 872: 179, 228: 6149, 451: 892, 445: 1125, 113: 2447, 636: 5019, 148: 552, 340: 5795, 846: 244, 684: 2426, 372: 6215, 606: 1004, 727: 178, 685: 1085, 655: 1234, 650: 1556, 222: 383, 300: 534, 847: 1460, 758: 1411, 609: 409, 305: 1953, 425: 2715, 785: 5109, 733: 3527, 781: 5734, 336: 303, 628: 656, 669: 849, 264: 1011, 331: 2704, 369: 5227, 913: 1835, 779: 6332, 615: 1654, 416: 3904, 376: 2256, 610: 5849, 849: 4855, 555: 2736, 486: 2013, 537: 5674, 850: 4877, 58: 4298, 288: 5396, 83: 901, 431: 3213, 848: 6531, 766: 2222, 596: 1598, 800: 8425, 747: 7344, 385: 350, 827: 3079, 864: 862, 539: 2857, 583: 799, 261: 3152, 742: 115, 802: 21, 343: 130, 948: 1082, 916: 5124, 635: 978, 569: 6377, 374: 1055, 886: 1419, 487: 3871, 96: 586, 594: 1073, 712: 409, 760: 1038, 909: 516, 496: 6013, 587: 2100, 814: 3705, 257: 8181, 406: 2, 884: 1345, 263: 6946, 347: 3017, 993: 1159, 873: 2511, 925: 6284, 474: 518, 688: 3993, 183: 1634, 861: 4196, 686: 1557, 638: 241, 938: 5471, 734: 1614, 623: 6549, 187: 588, 710: 2427, 868: 238, 193: 3150, 494: 1518, 541: 1937, 829: 548, 1014: 3722, 601: 468, 48: 1250, 859: 2353, 722: 6857, 292: 7120, 857: 1502, 879: 7934, 682: 1053, 761: 8128, 306: 919, 324: 816, 714: 356, 1055: 1131, 860: 732, 706: 95, 934: 2231, 936: 4976, 466: 8474, 882: 1704, 1028: 848, 896: 1088, 1047: 1583, 1029: 200, 892: 5649, 840: 3941, 813: 3022, 1021: 5416, 1132: 4370, 812: 1238, 772: 7558, 728: 736, 906: 4931, 958: 836, 763: 4550, 730: 1046, 866: 6094, 461: 2717, 765: 1891, 837: 8303, 602: 986, 612: 12, 1048: 595, 1131: 1398, 935: 714, 1040: 4358, 795: 3308, 1054: 567, 592: 36, 1032: 1628, 467: 1296, 1128: 6670, 244: 994, 460: 816, 613: 3628, 672: 4467, 545: 1137, 375: 3129, 237: 500, 697: 1357, 1164: 549, 1186: 3208, 933: 1115, 991: 5871, 1185: 510, 735: 2443, 475: 988, 1170: 2155, 654: 419, 957: 1644, 1166: 3676, 842: 4582, 895: 448, 977: 930, 573: 321, 1202: 3980, 804: 1311, 715: 2665, 1210: 2372, 865: 1116, 1041: 5568, 607: 3277, 1015: 1607, 593: 1604, 500: 1210, 787: 2793, 457: 494, 863: 2726, 1037: 4781, 1147: 1728, 914: 5098, 740: 932, 1086: 1084, 953: 1620, 651: 1975, 982: 5818, 1201: 3495, 1233: 1178, 1220: 340, 1173: 2567, 1238: 1721, 548: 1526, 1113: 4881, 997: 2836, 382: 2116, 580: 5761, 1153: 1089, 975: 726, 786: 6095, 1245: 1374, 1229: 1024, 452: 2538, 966: 785, 1196: 754, 988: 4216, 738: 9597, 394: 3521, 816: 1000, 794: 156, 1294: 426, 342: 683, 1083: 943, 1103: 1747, 900: 982, 419: 5363, 1283: 3444, 454: 246, 673: 2006, 1311: 5122, 1109: 1370, 639: 1925, 898: 7777, 1114: 29, 784: 7545, 600: 9305, 489: 4913, 595: 5165, 748: 495, 871: 4342, 666: 1556, 178: 4496, 1003: 825, 488: 4880, 483: 490, 578: 1019, 1056: 2565, 662: 1621, 869: 840, 640: 4483, 538: 7214, 762: 1141, 668: 572, 1190: 854, 436: 426, 506: 1426, 456: 959, 1237: 4681, 1221: 2533, 732: 1022, 778: 5617, 1124: 390, 572: 1328, 1230: 460, 1043: 7399, 1079: 5396, 1343: 2650, 891: 3381, 999: 5095, 1180: 5927, 1378: 658, 209: 738, 1365: 5180, 789: 3002, 1049: 2563, 1209: 1938, 1118: 1480, 493: 4115, 390: 2324, 1182: 2935, 1266: 1368, 1059: 3031, 504: 4982, 659: 884, 1305: 132, 589: 751, 693: 967, 1308: 3179, 1277: 479, 1303: 8239, 836: 1301, 705: 1293, 1454: 6264, 1078: 6146, 1058: 793, 1367: 5360, 907: 203, 824: 3433, 1023: 2121, 889: 1590, 405: 2979, 834: 1210, 1392: 287, 1256: 324, 605: 1168, 1331: 2584, 1157: 989, 1243: 808, 1080: 211, 1208: 2735, 626: 1003, 112: 198, 1082: 887, 630: 23, 1172: 1038, 1119: 1968, 1450: 3017, 619: 2606, 956: 542, 422: 672, 1354: 3380, 308: 2585, 890: 2885, 1212: 4356, 1223: 2336, 1495: 7008, 1460: 4387, 856: 1193, 1310: 612, 1370: 8566, 420: 2927, 696: 879, 1158: 2150, 796: 1398, 599: 2151, 1487: 1599, 553: 2219, 1265: 1750, 751: 448, 918: 7477, 1406: 571, 1004: 202, 1292: 2115, 579: 1578, 1542: 273, 1195: 738, 1414: 1528, 1339: 2902, 1405: 874, 1217: 2877, 1150: 88, 1456: 605, 1407: 408, 1273: 1427, 1271: 1555, 1384: 4729, 1001: 5385, 1514: 1667, 207: 553, 1330: 1565, 297: 5319, 1005: 6826, 549: 157, 1240: 7065, 954: 1, 1138: 30, 1154: 4384, 711: 6115, 1216: 2723, 266: 4452, 1332: 7902, 998: 308, 1017: 804, 1445: 5069, 969: 1629, 1325: 2713, 1228: 919, 1573: 2312, 359: 4113, 625: 8210, 683: 1785, 1471: 4669, 1129: 4992, 515: 3295, 1517: 252, 1546: 3229, 627: 160, 1532: 1323, 939: 395, 1453: 256, 1108: 6006, 905: 1140, 135: 2800, 770: 2166, 1249: 67, 1654: 108, 1477: 7989, 831: 3577, 1313: 7814, 535: 174, 1492: 2535, 1655: 6801, 357: 1712, 867: 6545, 893: 8613, 880: 1332, 922: 5946, 919: 1465, 854: 5702, 1466: 1926, 1522: 6395, 1567: 6156, 1409: 1165, 987: 4606, 1538: 144, 248: 2726, 708: 1180, 1174: 5614, 1165: 3592, 1171: 1967, 298: 3364, 1440: 912, 1324: 539, 1465: 584, 756: 723, 253: 925, 234: 8097, 1319: 321, 1607: 509, 1022: 5602, 799: 471, 64: 4875, 1106: 2902, 1496: 1315, 1710: 4569, 1244: 3591, 1478: 1019, 1267: 1378, 1419: 1480, 527: 3437, 1581: 4435, 1300: 3987, 985: 3552, 858: 1228, 716: 3819, 1031: 2007, 1722: 935, 139: 1514, 126: 1058, 1659: 5166, 1112: 415, 790: 2594, 1585: 1081, 1413: 1025, 543: 3240, 1081: 5720, 413: 400, 1754: 271, 1735: 3248, 736: 2022, 1012: 4787, 1372: 1880, 1582: 1097, 885: 4166, 660: 3669, 1599: 2746, 1771: 3927, 1241: 6876, 1747: 899, 1473: 1547, 1668: 2842, 1746: 1294, 876: 1230, 1278: 1353, 1524: 135, 1274: 4083, 495: 317, 771: 3534, 768: 3714, 1500: 1357, 567: 2337, 928: 6376, 1642: 212, 739: 190, 1575: 2684, 433: 5376, 1038: 636, 1544: 672, 1687: 2153, 853: 2268, 1411: 6702, 513: 6703, 1678: 1791, 1285: 1671, 1062: 968, 810: 6585, 1326: 1271, 1501: 5209, 1390: 3583, 1369: 781, 1034: 1002, 826: 924, 1341: 1824, 224: 801, 1006: 6285, 755: 915, 1550: 9323, 1511: 1033, 1234: 5045, 776: 5510, 1870: 6016, 1670: 2791, 1650: 1329, 1774: 1113, 1493: 3798, 700: 287, 1203: 2759, 1362: 2127, 1676: 1693, 421: 1065, 937: 1594, 1091: 3348, 1355: 1846, 1543: 2841, 497: 5145, 1646: 5458, 1262: 6498, 797: 1891, 1057: 2303, 633: 1963, 1290: 965, 333: 583, 1206: 3831, 1299: 4701, 1070: 4256, 1904: 821, 1239: 3741, 1745: 5524, 820: 3126, 1638: 2763, 1692: 5224, 1099: 991, 492: 4707, 972: 4530, 517: 1998, 1869: 2746, 1200: 1303, 1060: 1946, 1211: 579, 1408: 1926, 1443: 1929, 1321: 6971, 1874: 896, 1876: 3487, 1251: 658, 1178: 5461, 1671: 1179, 1064: 5307, 923: 731, 1505: 1871, 851: 7298, 1664: 4159, 1399: 2820, 1509: 1966, 731: 6597, 927: 1523, 1613: 955, 1912: 3641, 384: 2743, 327: 232, 393: 612, 1878: 1776, 1438: 2795, 1910: 2978, 652: 5611, 1289: 521, 1400: 1275, 1197: 5384, 811: 505, 1845: 1433, 1623: 113, 1377: 2501, 1608: 1743, 1990: 206, 819: 2164, 616: 2694, 1998: 2213, 801: 6831, 229: 1326, 1587: 580, 1757: 4721, 910: 2598, 1092: 8119, 546: 1673, 1348: 1147, 707: 291, 1177: 2976, 2018: 598, 806: 1955, 1988: 1757, 1911: 577, 1120: 6573, 1856: 4330, 564: 3737, 1997: 2136, 1898: 2046, 1619: 5445, 809: 8067, 1008: 4920, 2011: 697, 904: 4122, 562: 695, 1900: 191, 1560: 1524, 1592: 1893, 1862: 3969, 1072: 2955, 1568: 2961, 981: 162, 1402: 1524, 1840: 2628, 2103: 4718, 509: 1249, 1725: 884, 1033: 1590, 1067: 2833, 1063: 5429, 1916: 136, 2073: 3030, 1605: 639, 1415: 2856, 1349: 3091, 1551: 1853, 1999: 2449, 1634: 1769, 1272: 981, 1717: 1209, 1398: 4450, 1516: 385, 1748: 4115, 641: 519, 1387: 2611, 1773: 4714, 649: 357, 1090: 336, 1315: 1567, 1957: 1733, 1418: 2133, 52: 1346, 1410: 1430, 1785: 4352, 1026: 7471, 1281: 706, 1615: 958, 962: 7072, 1432: 582, 949: 342, 1872: 1139, 1877: 1308, 921: 7031, 1688: 1553, 1535: 800, 1984: 2756, 2099: 2470, 833: 3095, 2155: 303, 1820: 7234, 557: 283, 1609: 5682, 1917: 5984, 1991: 668, 1020: 2067, 1449: 4201, 1323: 2017, 352: 1264, 2069: 1299, 2210: 394, 1395: 5826, 1497: 1384, 1030: 1218, 943: 1415, 1356: 6020, 1469: 2672, 699: 2850, 1135: 1849, 1948: 607, 1864: 2094, 2198: 189, 1657: 2183, 1525: 221, 852: 3499, 1792: 2235, 185: 1801, 2164: 375, 1145: 4185, 1175: 3297, 1475: 249, 2042: 4145, 2178: 6521, 1533: 174, 1895: 2957, 1136: 1718, 2129: 123, 2200: 8967, 1503: 1403, 2171: 6276, 2124: 6616, 1429: 3238, 825: 975, 1127: 1692, 1125: 3885, 648: 277, 2251: 1621, 1765: 3645, 1297: 855, 1699: 3420, 2161: 5839, 1740: 2536, 1724: 1051, 1768: 1576, 992: 715, 1660: 1644, 2195: 3044, 945: 854, 2134: 4333, 1561: 5455, 729: 180, 971: 1505, 1194: 1261, 704: 236, 964: 1614, 1447: 1438, 388: 1812, 1576: 1603, 1009: 2684, 1346: 3637, 629: 419, 2149: 1694, 1403: 3574, 1830: 6069, 1979: 4861, 1000: 2581, 1137: 1089, 841: 3035, 1886: 495, 1061: 2126, 2338: 1042, 2083: 1984, 1264: 2164, 1156: 2282, 1353: 699, 2088: 1605, 1954: 1477, 1865: 5193, 1360: 1382, 1476: 5121, 828: 4715, 1282: 1063, 1797: 1952, 2252: 82, 2187: 5687, 2344: 4658, 1430: 311, 1276: 2706, 1288: 1346, 2283: 799, 1446: 10, 2066: 4009, 2355: 928, 2228: 3154, 2012: 2216, 1024: 439, 2218: 4822, 903: 1872, 1766: 4345, 1996: 234, 967: 6023, 642: 1823, 1149: 2370, 2123: 6362, 1376: 1081, 1520: 4385, 835: 241, 1236: 6554, 1821: 4446, 2291: 2934, 870: 4695, 2028: 1878, 1696: 1531, 1778: 2942, 1235: 685, 1549: 2989, 2021: 5105, 1050: 6388, 951: 1850, 1656: 1731, 2353: 961, 1161: 2732, 1096: 1919, 1944: 5177, 1967: 576, 1806: 3935, 1371: 2079, 757: 2587, 2343: 8045, 984: 3600, 1489: 227, 2183: 3485, 894: 291, 1152: 980, 2278: 2906, 2109: 1290, 698: 2011, 1302: 129, 2078: 2081, 883: 5417, 1744: 3533, 2175: 1648, 1644: 7905, 2280: 1488, 2025: 2760, 1923: 1390, 1763: 2424, 897: 4471, 2085: 2944, 2475: 491, 703: 820, 1749: 4507, 1826: 1513, 675: 6101, 1252: 1334, 1287: 1978, 1219: 1821, 1269: 1143, 1726: 6758, 529: 1747, 1554: 4434, 2391: 2303, 1499: 3629, 767: 6032, 1846: 2119, 1320: 1536, 254: 3368, 2434: 0, 1340: 915, 2385: 156, 1751: 3852, 1100: 244, 695: 2697, 947: 1801, 2080: 431, 1598: 4553, 1946: 1851, 1969: 3544, 2279: 915, 1117: 179, 2115: 2221, 1159: 2357, 1932: 1646, 2333: 4614, 1338: 2059, 750: 8332, 2060: 5393, 961: 2049, 1077: 3550, 929: 3693, 1169: 1725, 2248: 1055, 2193: 4592, 1508: 3267, 978: 4028, 1105: 853, 2324: 1126, 505: 2056, 2337: 4616, 2114: 5015, 989: 4013, 2135: 6752, 1389: 2604, 2416: 223, 2101: 5894, 994: 138, 1075: 4311, 1758: 1078, 1199: 677, 2055: 8035, 1974: 5500, 1658: 2269, 2476: 7803, 1595: 3413, 1227: 5595, 2508: 375, 746: 2830, 1140: 4048, 713: 977, 1563: 1194, 1192: 605, 585: 1924, 1651: 1284, 1622: 2558, 2216: 2691, 2500: 4684, 2122: 83, 1928: 1353, 1603: 600, 2045: 4433, 2144: 2569, 2464: 1588, 2407: 3430, 807: 2998, 2499: 2604, 2050: 7737, 2409: 693, 2381: 2133, 2463: 7, 1444: 791, 1189: 3760, 690: 435, 1046: 339, 952: 793, 499: 2608, 878: 6117, 808: 4591, 2535: 1837, 839: 9027, 1213: 493, 1570: 782, 2249: 3532, 2441: 3926, 2469: 992, 1824: 2052, 584: 2580, 1863: 1118, 1337: 3055, 438: 1806, 2356: 1546, 2690: 4090, 2533: 293, 911: 2598, 540: 11, 2422: 1832, 1523: 434, 2173: 153, 2225: 2324, 1537: 8601, 2153: 533, 2643: 2032, 1143: 524, 817: 66, 1673: 2443, 1809: 4995, 2093: 854, 899: 1229, 1530: 2375, 2094: 2665, 1085: 1671, 2665: 924, 2166: 1613, 2306: 139, 1781: 2146, 2148: 5996, 2448: 1859, 877: 1156, 1680: 2415, 1926: 2235, 1486: 2584, 2421: 1251, 2156: 4157, 2734: 117, 1553: 1368, 2328: 545, 2719: 1708, 1720: 1217, 2202: 1709, 2361: 2992, 1467: 5778, 2366: 1381, 1629: 1695, 2257: 3008, 2345: 3064, 2041: 4031, 1541: 1977, 1116: 181, 1559: 6572, 1939: 3807, 2336: 3472, 2523: 1704, 931: 1726, 1296: 9028, 1345: 905, 1632: 948, 1071: 2471, 1253: 3101, 2629: 6757, 1958: 2111, 2150: 6345, 1636: 2240, 1484: 707, 2810: 1798, 875: 3775, 2127: 1665, 2608: 4749, 1776: 618, 414: 734, 1935: 2393, 2072: 4328, 1750: 1441, 490: 3294, 2405: 2441, 2644: 1749, 2480: 8279, 1218: 2331, 1857: 1623, 1115: 1911, 2737: 7229, 2745: 5040, 2426: 1327, 1738: 4112, 1427: 1394, 2418: 1693, 2752: 2148, 1891: 7418, 1908: 1722, 2700: 5386, 1247: 1831, 2843: 1151, 2284: 1063, 1834: 1063, 1383: 2264, 1940: 1434, 1483: 1266, 2728: 1220, 2649: 594, 1051: 509, 2261: 1342, 759: 1540, 2484: 1032, 2817: 1789, 2163: 1852, 702: 1465, 2325: 1679, 2269: 7216, 2259: 6685, 2432: 3644, 2851: 1950, 1433: 2449, 2596: 4625, 1490: 1771, 2478: 377, 1142: 1280, 968: 2793, 2329: 3615, 1727: 2371, 1684: 3028, 1110: 2345, 2534: 7433, 2655: 1906, 2539: 4782, 1184: 1362, 1852: 6218, 2846: 265, 2137: 1027, 1097: 1914, 586: 2536, 2004: 2792, 2453: 2476, 2511: 1116, 2820: 1600, 1894: 2470, 2889: 2516, 2832: 1665, 2008: 1069, 1614: 239, 604: 2914, 2864: 2867, 2668: 1864, 1255: 7765, 189: 1600, 2233: 2821, 2682: 4973, 2462: 9051, 1813: 3222, 2730: 2268, 2341: 1923, 2458: 562, 2051: 812, 2925: 3450, 874: 589, 2854: 21, 1679: 658, 1179: 5652, 2165: 3473, 2829: 3404, 2873: 536, 2937: 3518, 2936: 398, 2908: 2543, 2517: 1564, 1094: 1171, 2686: 5323, 1428: 639, 1439: 3068, 2375: 833, 932: 786, 2423: 2778, 2383: 1664, 2560: 7067, 681: 1349, 2822: 7866, 1421: 2538, 1933: 762, 1873: 682, 1951: 2321, 2125: 4292, 2406: 6039, 2894: 2749, 2411: 673, 1528: 484, 1011: 187, 2860: 2667, 2743: 9095, 1506: 7693, 1672: 5013, 2142: 523, 582: 1491, 1868: 6422, 2086: 6359, 1929: 809, 752: 4063, 1811: 1124, 238: 3473, 2664: 4723, 2975: 456, 2536: 3919, 1422: 5241, 844: 1488, 1955: 4333, 881: 70, 1295: 868, 1007: 1919, 2993: 1482, 955: 98, 709: 2995, 2118: 641, 1753: 1704, 2485: 3449, 1361: 1284, 2692: 1167, 1602: 1183, 2377: 3407, 1042: 3070, 1804: 574, 1985: 4463, 1871: 2157, 1801: 529, 1045: 1632, 2067: 172, 2436: 2522, 1485: 3046, 2488: 320, 2912: 8908, 2987: 42, 1304: 168, 2177: 103, 1814: 646, 2582: 2789, 2875: 541, 2540: 928, 2779: 5818, 2840: 9450, 2553: 492, 2903: 3047, 2530: 1701, 2794: 367, 2749: 6482, 1263: 6246, 1661: 2835, 1903: 660, 2784: 60, 2871: 2011, 2550: 3716, 2816: 3111, 1947: 47, 1351: 2358, 3129: 1374, 2318: 4037, 1139: 2236, 1719: 1103, 764: 11, 2474: 2320, 2998: 1160, 2767: 5680, 1831: 4426, 2438: 5721, 2087: 7272, 1502: 1023, 2813: 5439, 2541: 3076, 1539: 1334, 2979: 1671, 1394: 839, 3146: 1278, 2529: 583, 2934: 371, 3069: 3188, 2524: 295, 2543: 2225, 1566: 1111, 986: 5528, 2121: 2757, 2141: 3072, 2017: 1908, 2346: 2537, 2683: 3454, 2648: 79, 963: 42, 2902: 7737, 2926: 1100, 171: 4849, 2701: 2838, 2110: 3136, 2461: 3160, 1084: 7240, 1130: 5375, 2935: 1351, 2855: 5325, 1961: 7237, 3174: 633, 1364: 5147, 364: 445, 1925: 5650, 1479: 2557, 2569: 776, 2196: 7029, 1920: 401, 2413: 8682, 2939: 1562, 1191: 2644, 2693: 1310, 1301: 4797, 1436: 2785, 1246: 1495, 1669: 2608, 3106: 3451, 2513: 1584, 3215: 2249, 2986: 2677, 2092: 5649, 2556: 2831, 103: 5615, 576: 4275, 1829: 2070, 3044: 6287, 383: 5423, 1798: 4685, 3030: 7744, 1126: 139, 1557: 3294, 3190: 1030, 2152: 243, 1962: 1471, 3135: 3206, 2918: 3028, 2977: 2810, 1604: 2932, 2349: 7254, 2044: 195, 1342: 1564, 2520: 2761, 2312: 1422, 1850: 1073, 1685: 6274, 2836: 2589, 2772: 1251, 3093: 2600, 1193: 2965, 3097: 6044, 2038: 8651, 2496: 3041, 3318: 1555, 3322: 5494, 3255: 2702, 3041: 507, 803: 1411, 1380: 5033, 915: 2039, 2424: 4593, 1706: 1874, 783: 1239, 1837: 304, 1767: 2301, 2943: 272, 2867: 4195, 2214: 1350, 2079: 5861, 2988: 2059, 2724: 1945, 1102: 4440, 3160: 3340, 1937: 2009, 1463: 7621, 510: 3355, 2111: 757, 3314: 4609, 2097: 2170, 2720: 4844, 3257: 3811, 2626: 1349, 2082: 3602, 2090: 2238, 3151: 3158, 1836: 283, 3247: 1095, 3216: 1241, 519: 1681, 3252: 2111, 726: 3526, 3430: 793, 1902: 367, 2850: 1815, 3143: 865, 2068: 806, 2542: 551, 3158: 4209, 1434: 405, 370: 1729, 1601: 4574, 818: 926, 2869: 1963, 2604: 4978, 401: 522, 2276: 3092, 3212: 3602, 1121: 3371, 2651: 1084, 2792: 8856, 2477: 5697, 1633: 927, 2009: 2344, 2132: 1564, 912: 3489, 2750: 1373, 2983: 4351, 2806: 4213, 3263: 1299, 2714: 1292, 3202: 3151, 1630: 2980, 1529: 4481, 1327: 1703, 2167: 2723, 3025: 1249, 2268: 5764, 1701: 2888, 2647: 7455, 2180: 2045, 1519: 979, 3300: 1868, 2372: 3032, 2656: 5260, 3021: 3619, 3062: 439, 1844: 3374, 1782: 1790, 2751: 1204, 3070: 4315, 2417: 3484, 754: 2159, 2777: 1847, 1368: 2577, 2778: 4649, 1843: 61, 2574: 2160, 2223: 957, 1293: 3444, 1635: 8223, 3034: 4042, 367: 1517, 1715: 7603, 1631: 1886, 2274: 5113, 1148: 3565, 1915: 1383, 2250: 3889, 1569: 2755, 3340: 570, 691: 36, 930: 4973, 2697: 4498, 434: 4591, 1896: 6770, 3123: 3218, 345: 4902, 1892: 1019, 1918: 5560, 2980: 1235, 775: 1005, 2256: 7128, 1205: 1033, 3342: 3542, 2661: 2525, 3344: 3140, 1010: 503, 530: 1047, 3061: 1017, 1494: 837, 3405: 4193, 3612: 2973, 26: 4653, 2785: 3546, 3138: 2162, 941: 4427, 3486: 2430, 2075: 1847, 2844: 390, 3362: 669, 3321: 1313, 3402: 2803, 1385: 5704, 2386: 1597, 2798: 2913, 3491: 7825, 3126: 3865, 2775: 2594, 2621: 1571, 1702: 1241, 2254: 2334, 1617: 3031, 3284: 2009, 1590: 146, 3338: 2318, 1698: 4662, 1334: 3826, 2761: 168, 2931: 5887, 3295: 4461, 3464: 8863, 1799: 1504, 1359: 1155, 2570: 2719, 2780: 3533, 2145: 395, 3655: 5096, 2445: 2375, 2273: 6444, 2016: 6859, 3104: 5139, 2435: 3959, 3099: 424, 3634: 3033, 2219: 3831, 3176: 2645, 3623: 3122, 2260: 2339, 1637: 3710, 1848: 735, 924: 6048, 2824: 2197, 1231: 1697, 788: 972, 2307: 6811, 3325: 476, 2637: 700, 3622: 2440, 3373: 3438, 3665: 2632, 3438: 1170, 2096: 4388, 3651: 4581, 744: 530, 2442: 1544, 2992: 3089, 2715: 3062, 1417: 2134, 1606: 4706, 1647: 641, 3079: 458, 3616: 4523, 3415: 556, 3142: 3063, 3431: 4398, 1662: 1413, 2229: 521, 3649: 2786, 1547: 3612, 3343: 9741, 2740: 3128, 1677: 3389, 2876: 2541, 2455: 59, 3735: 6985, 2599: 2790, 3193: 556, 1442: 5555, 3299: 2602, 1540: 2025, 3111: 668, 3049: 5414, 2354: 5380, 3082: 807, 2961: 2139, 2313: 1564, 2591: 19, 2515: 3190, 2861: 98, 2742: 3738, 2710: 375, 201: 2341, 1694: 5312, 3287: 7189, 2947: 1993, 3192: 3569, 3411: 3258, 3618: 1848, 1817: 3586, 2287: 958, 960: 1979, 3770: 5097, 3408: 315, 3240: 2654, 2849: 3239, 995: 4690, 970: 5730, 2804: 3699, 2583: 3368, 3728: 7370, 3265: 405, 3549: 6428, 1578: 1237, 3335: 261, 3766: 1250, 2472: 4828, 2197: 6677, 3410: 3376, 3463: 667, 3206: 1491, 2841: 3045, 2258: 1871, 2828: 8056, 2997: 1521, 902: 3316, 3016: 846, 3520: 4677, 1728: 1299, 1498: 3037, 3729: 1267, 3244: 3217, 3869: 1928, 2965: 2618, 3826: 3208, 3882: 3644, 3639: 5130, 3276: 2980, 1795: 4655, 2754: 683, 2491: 3651, 3613: 2456, 3736: 172, 3110: 939, 3010: 1191, 2932: 3698, 3119: 239, 3172: 459, 3189: 867, 1611: 2882, 3588: 5317, 3118: 4628, 1950: 875, 1628: 2476, 1756: 3871, 1491: 1922, 3328: 1978, 3339: 6040, 1089: 4671, 3509: 2088, 3162: 5353, 3793: 4478, 2531: 2821, 3027: 3245, 3136: 2826, 3026: 4988, 3341: 841, 678: 4712, 3935: 799, 2593: 2033, 1068: 887, 3574: 3783, 1994: 1962, 3786: 2009, 2721: 1577, 1992: 1109, 3632: 5529, 2319: 1540, 3643: 5282, 3147: 3172, 2863: 2135, 2738: 4097, 3414: 5247, 1548: 4948, 3687: 4473, 2689: 3343, 2945: 1575, 1052: 6174, 2967: 4147, 3896: 2359, 2952: 1794, 2429: 3789, 2827: 2641, 3963: 3099, 409: 377, 2026: 5330, 2786: 425, 3658: 3757, 3939: 3415, 2736: 1135, 1931: 1931, 3769: 3453, 2564: 2720, 1347: 2678, 1705: 3009, 2882: 2584, 3166: 2797, 1653: 3185, 3268: 2637, 3739: 4775, 1386: 300, 3760: 1621, 1802: 588, 1790: 2232, 2580: 1499, 1989: 754, 2805: 585, 2748: 1322, 3011: 1498, 1404: 5330, 3700: 2252, 793: 1176, 2602: 441, 1775: 770, 2537: 2562, 2388: 7285, 1982: 394, 3211: 6644, 3101: 831, 2687: 4694, 1336: 411, 3952: 2622, 2492: 3049, 3737: 1610, 532: 2091, 1919: 2727, 3722: 5852, 2286: 571, 3493: 6472, 2981: 7132, 1718: 4874, 3445: 1562, 3336: 1164, 2774: 918, 2357: 3956, 1562: 6994, 2609: 3777, 3000: 2417, 1431: 2204, 1888: 4892, 3532: 7044, 3761: 117, 3849: 3600, 2054: 1858, 3525: 4519, 3554: 456, 3999: 3113, 2590: 1543, 3800: 1489, 2821: 1898, 3435: 2164, 3987: 2349, 3759: 1598, 2858: 4740, 2758: 7208, 3173: 1515, 2857: 3335, 3046: 4260, 3452: 1718, 3966: 2237, 3807: 1029, 3096: 911, 2373: 2960, 260: 2116, 3863: 4140, 1039: 713, 2212: 3838, 2598: 4426, 3327: 210, 1375: 4015, 1333: 1552, 3512: 8323, 3260: 2444, 2247: 3813, 3688: 694, 4082: 1119, 3131: 1461, 3163: 855, 3043: 1009, 679: 1097, 2359: 4464, 2565: 147, 1867: 3723, 2074: 1997, 3028: 39, 815: 618, 3495: 2082, 2657: 5876, 2392: 1160, 2046: 2726, 3380: 5938, 4032: 7116, 4231: 1931, 3745: 767, 3565: 576, 2791: 4748, 3128: 3439, 4069: 4365, 2032: 3614, 1626: 2177, 1111: 807, 1643: 2566, 3381: 1293, 3217: 2788, 2862: 3194, 2895: 6097, 1545: 2399, 3023: 4165, 1307: 6651, 2956: 420, 2703: 2569, 980: 1813, 4245: 2427, 1224: 1165, 1312: 2287, 663: 3094, 3425: 3075, 3798: 2724, 2104: 1303, 3348: 2558, 3671: 1113, 3239: 9462, 3881: 3050, 4144: 2981, 3477: 3981, 3823: 2810, 3487: 3734, 2633: 3029, 1397: 1005, 4215: 3827, 2509: 1920, 1709: 1088, 4110: 1282, 2033: 2023, 3352: 5181, 3604: 4909, 2982: 1690, 990: 6105, 2147: 3724, 3732: 5070, 4190: 1024, 1317: 6584, 1518: 1879, 2883: 4537, 2927: 1069, 3378: 1039, 1044: 5509, 3539: 2574, 2962: 373, 2305: 984, 2238: 4402, 4268: 1476, 2685: 6054, 2811: 2089, 3781: 31, 2688: 3709, 3165: 6858, 3360: 5581, 3712: 3786, 3403: 0, 4172: 1891, 4252: 1052, 3368: 70, 3672: 2548, 4347: 7936, 4124: 2602, 2194: 1231, 3237: 3386, 1942: 803, 4387: 1988, 3593: 778, 1424: 1138, 2206: 2762, 3124: 2339, 4121: 893, 1583: 1459, 2659: 3025, 2584: 3077, 1827: 3030, 2678: 4110, 2914: 1802, 1839: 760, 3374: 2693, 3859: 3605, 2671: 1362, 1890: 3019, 1564: 4703, 1087: 5927, 3876: 6368, 4254: 4041, 3583: 3390, 1515: 826, 3690: 1657, 3695: 1359, 2452: 209, 4293: 3901, 3345: 3165, 2717: 73, 1155: 187, 1198: 593, 4322: 2450, 3518: 2918, 3306: 3163, 1141: 7119, 3407: 2164, 1927: 5178, 4234: 6081, 3723: 6807, 3179: 2714, 3596: 6323, 1181: 4594, 3893: 5105, 3964: 1720, 1924: 578, 4307: 1877, 3385: 180, 2106: 6263, 1393: 3459, 3561: 1547, 3633: 5308, 3862: 2015, 2367: 2713, 1207: 4051, 1812: 851, 4250: 7372, 3127: 1911, 2332: 6211, 2036: 1368, 4112: 6045, 3281: 4540, 2928: 131, 3531: 5773, 3591: 2402, 1527: 645, 3779: 190, 2174: 3512, 3261: 1420, 3307: 3431, 3705: 1054, 920: 1300, 4397: 2360, 3478: 24, 3155: 2636, 3970: 570, 3003: 4409, 1793: 2213, 3506: 8561, 3031: 4161, 4522: 5923, 2015: 2378, 1396: 1688, 3320: 2740, 3395: 4986, 4033: 1968, 1531: 214, 2505: 2792, 4119: 2736, 3301: 4118, 2289: 4217, 2625: 2344, 2884: 24, 2704: 3344, 4507: 4229, 3502: 1371, 3203: 3062, 3040: 223, 3841: 3809, 3429: 2085, 2172: 1987, 2706: 1374, 944: 2242, 1743: 4805, 3113: 290, 2057: 2003, 3441: 2182, 2554: 6, 2282: 4860, 2803: 5152, 2301: 2796, 2460: 4253, 3645: 2623, 2181: 2130, 3864: 2784, 4495: 6620, 3628: 392, 2769: 223, 2084: 3219, 4542: 4938, 2628: 2965, 1151: 5000, 3508: 304, 2795: 4338, 2179: 3273, 1298: 1268, 2029: 347, 4280: 2293, 1168: 2948, 4089: 412, 4023: 2888, 634: 3622, 4351: 2833, 4321: 7838, 2266: 7609, 4113: 2518, 4539: 3714, 798: 2376, 4207: 97, 4226: 4439, 3389: 15, 2597: 2061, 4337: 3568, 4447: 2877, 4334: 7048, 3853: 3698, 2838: 4388, 4615: 756, 4221: 974, 3440: 4216, 2732: 5574, 4685: 3445, 3475: 4270, 4341: 3125, 2874: 3642, 4183: 3834, 1723: 748, 1952: 6398, 2885: 1148, 1309: 7499, 3447: 5589, 3664: 1997, 2065: 4495, 2709: 2794, 3545: 5439, 3045: 7606, 3567: 5279, 4512: 2885, 1366: 352, 4147: 429, 3063: 1499, 3171: 2351, 4073: 3656, 3937: 851, 3523: 4659, 3894: 7111, 4208: 421, 2694: 1410, 4127: 2090, 3064: 1295, 4026: 1988, 2116: 1179, 3609: 5616, 4070: 3829, 1584: 8560, 2667: 1632, 2616: 1075, 3997: 1843, 3013: 2489, 2801: 6822, 4132: 746, 1816: 4911, 3246: 4127, 661: 2393, 1977: 2963, 3977: 3625, 4545: 5821, 3253: 3084, 4488: 3996, 4605: 3843, 4699: 2687, 674: 1237, 2185: 44, 3906: 2165, 2360: 686, 4627: 2459, 4744: 2015, 2705: 394, 4562: 7653, 1214: 2951, 3553: 2990, 4533: 2586, 4511: 646, 3731: 3308, 4275: 3969, 2984: 4747, 4210: 136, 3227: 4335, 2348: 2679, 2105: 4359, 4663: 2991, 3511: 3417, 2303: 3578, 1832: 1220, 4213: 4341, 3839: 17, 3851: 6679, 3198: 4653, 4319: 7360, 3996: 3077, 692: 638, 3145: 7646, 1270: 4734, 4423: 4666, 4162: 857, 4037: 3390, 3283: 2664, 99: 2998, 4573: 3196, 4173: 4313, 3089: 4362, 4556: 2264, 4544: 4763, 1732: 781, 4318: 452, 4398: 1192, 3924: 92, 4009: 1584, 2642: 3942, 3885: 4522, 4361: 325, 1074: 1955, 2891: 2825, 1572: 2584, 2691: 4836, 2433: 4257, 2830: 5234, 2548: 3157, 4822: 4525, 4102: 4748, 2759: 2492, 3840: 832, 4709: 4443, 4407: 4088, 4791: 1553, 1987: 854, 4536: 1131, 4083: 2015, 3830: 5436, 2240: 5293, 1588: 8193, 4563: 1530, 4278: 430, 4793: 4036, 3481: 3336, 3207: 297, 4590: 2369, 2726: 3449, 2182: 4035, 4087: 2506, 4335: 2172, 3668: 747, 4353: 6080, 3159: 1066, 2108: 1349, 2545: 3793, 3710: 306, 3269: 2143, 2675: 1379, 2056: 1988, 1621: 1441, 4309: 305, 1721: 4989, 1513: 663, 365: 1734, 2342: 3607, 4722: 2617, 2587: 4833, 4004: 2114, 4654: 4490, 1858: 242, 3088: 4968, 3566: 3911, 4454: 1264, 4011: 2931, 3259: 3372, 1913: 4475, 3067: 1347, 3756: 6899, 4339: 2989, 4007: 6919, 4956: 1204, 3516: 4723, 4773: 2125, 2437: 1099, 1897: 2943, 4575: 365, 1374: 2868, 2062: 2098, 3865: 737, 2191: 4649, 2203: 1967, 1825: 6216, 3891: 6139, 4409: 5162, 4197: 867, 3738: 3313, 830: 6011, 4270: 3416, 4373: 7005, 2040: 1071, 3448: 4690, 3957: 3903, 3288: 1608, 4636: 1963, 3006: 969, 4385: 2402, 2039: 2498, 2946: 5355, 2157: 1959, 1849: 4417, 3108: 7374, 4774: 4315, 3751: 4276, 4181: 4469, 3022: 344, 3570: 2680, 1693: 2502, 3889: 1899, 3427: 3177, 4279: 1698, 3847: 3062, 3816: 2837, 3673: 862, 3646: 4424, 1146: 3148, 2677: 3882, 1162: 4383, 2711: 5653, 4180: 1415, 4348: 1252, 3559: 2185, 4990: 6082, 4482: 2531, 2707: 3070, 3051: 3559, 2352: 2179, 4946: 1391, 3776: 5806, 4985: 4053, 2618: 3087, 575: 3333, 3505: 1793, 1975: 4082, 1625: 1682, 4733: 1129, 3575: 8129, 3726: 2081, 3780: 251, 3763: 6899, 5092: 754, 5071: 3259, 2793: 3284, 4864: 207, 4758: 1902, 1279: 3352, 4484: 4764, 1981: 2634, 4738: 1025, 4441: 2594, 2635: 5431, 4471: 4174, 4580: 401, 4725: 1531, 5111: 4648, 4608: 2089, 3917: 4428, 4350: 2726, 2382: 2832, 5000: 2012, 4450: 1413, 3598: 5055, 1242: 4497, 3492: 669, 3750: 4938, 1457: 3571, 4491: 1549, 2620: 6703, 4645: 3020, 4140: 4418, 4359: 7665, 2447: 961, 2316: 523, 1970: 527, 5181: 3114, 4701: 714, 4442: 298, 3576: 359, 3908: 5353, 2814: 4398, 4051: 1953, 1556: 2674, 3454: 864, 2501: 257, 4416: 779, 1458: 4535, 4891: 2718, 4333: 4551, 4786: 590, 4849: 587, 5190: 5040, 2976: 5080, 3818: 7238, 4735: 135, 2242: 4767, 2650: 5658, 3884: 2449, 3858: 3496, 3733: 188, 3904: 3042, 4306: 368, 2571: 4574, 5130: 2445, 3913: 307, 5236: 4463, 4305: 6028, 4969: 1564, 3501: 692, 5230: 855, 3536: 96, 1971: 970, 3842: 800, 3743: 1444, 3968: 996, 3804: 1561, 2293: 3785, 1451: 4030, 4553: 4205, 2996: 1634, 4330: 4226, 2573: 2133, 4896: 1929, 4814: 3316, 3719: 1028, 1860: 6123, 3150: 3595, 3945: 2838, 2410: 601, 3587: 749, 3059: 1506, 4117: 4259, 4984: 1362, 3813: 4708, 725: 437, 2802: 5002, 3991: 2195, 3054: 4642, 3500: 7600, 4404: 4460, 2940: 3690, 4251: 4795, 1284: 2687, 4625: 2446, 4721: 1532, 2107: 2958, 2095: 5002, 3799: 704, 4292: 4403, 5089: 3630, 4895: 3223, 4480: 3971, 3973: 4906, 3699: 557, 4639: 5302, 3833: 593, 1835: 541, 5294: 2423, 2209: 3101, 4854: 7570, 3589: 3313, 2920: 2440, 2818: 4357, 4808: 5282, 4734: 4529, 5221: 1049, 973: 810, 3805: 4629, 4193: 4531, 4308: 2489, 1786: 5156, 5311: 1227, 2917: 4172, 4040: 1053, 4589: 3996, 5335: 1131, 2673: 4205, 4871: 2405, 4052: 4025, 3080: 183, 4527: 687, 3433: 1296, 4328: 2528, 2419: 3217, 3676: 4867, 4068: 838, 2744: 970, 3167: 4750, 1823: 895, 1036: 1795, 4028: 1638, 676: 854, 5244: 1838, 4546: 4757, 4248: 7284, 4737: 5864, 1176: 1449, 5100: 118, 4762: 4019, 5242: 512, 5296: 925, 3400: 1299, 3058: 419, 3413: 3714, 4801: 1416, 3650: 4257, 2544: 4991, 4106: 1383, 3293: 5049, 2112: 3782, 4237: 4740, 4154: 3980, 4651: 5474, 3922: 4397, 2384: 954, 2562: 2304, 3555: 2839, 4947: 845, 5358: 1657, 4995: 1174, 2158: 3432, 4941: 7998, 3752: 1584, 5378: 1147, 4543: 7667, 5310: 7147, 4086: 1790, 3888: 4544, 2938: 6412, 1921: 209, 2676: 4280, 3310: 2778, 4098: 77, 4997: 5191, 4179: 2031, 4019: 2769, 2457: 3825, 2526: 4582, 4123: 553, 4182: 5990, 4618: 31, 1053: 4727, 5078: 2418, 4386: 1428, 1759: 5003, 1107: 6393, 5260: 2285, 2789: 2963, 5443: 4216, 4185: 2769, 4637: 1203, 2317: 4309, 5317: 3868, 3439: 2285, 3654: 5229, 4927: 4891, 2138: 5015, 4001: 3812, 4249: 5422, 3956: 4668, 1879: 5245, 5482: 3084, 4452: 933, 4591: 7151, 4798: 303, 1160: 3516, 2378: 4677, 3498: 5890, 2713: 1855, 3724: 568, 4869: 5485, 4707: 4327, 5353: 4845, 1187: 891, 5577: 818, 1534: 4969, 1412: 809, 4152: 922, 2414: 5376, 1760: 5567, 1122: 5227, 4648: 2132, 5218: 2605, 4826: 5484, 4448: 2676, 3941: 3437, 4515: 1774, 5036: 463, 5440: 5384, 3286: 4229, 5149: 2372, 4818: 4960, 2403: 4990, 3248: 4265, 4833: 2622, 3377: 321, 1884: 374, 4954: 1477, 3125: 8003, 3364: 5706, 677: 4453, 3949: 3750, 3068: 3423, 4867: 2443, 4419: 4785, 4492: 3117, 4006: 1711, 5119: 3815, 5292: 4242, 464: 1528, 5193: 3790, 5315: 4262, 5496: 317, 2449: 3989, 3465: 5284, 2199: 786, 4261: 4792, 1734: 4275, 3644: 44, 4559: 5293, 4256: 5263, 329: 110, 4897: 5440, 4603: 3834, 2622: 6960, 2298: 1597, 3250: 6580, 983: 2499, 5158: 8679, 5567: 2459, 5056: 3254, 5570: 5809, 5049: 5322, 5101: 2050, 2297: 1903, 4939: 971, 440: 345, 2300: 1249, 4948: 872, 2606: 3176, 1335: 1001, 4727: 580, 3258: 1384, 3962: 6749, 3701: 1571, 5090: 3543, 5715: 5762, 4163: 4741, 3630: 1007, 5619: 5982, 3444: 2375, 2208: 673, 1772: 935, 4426: 542, 5390: 5248, 4415: 4976, 888: 1206, 4260: 2979, 5120: 2183, 2787: 7308, 2113: 2159, 5094: 4662, 4827: 7726, 3457: 3860, 3156: 2515, 3220: 1668, 4445: 1065, 4719: 1793, 5066: 406, 5455: 2482, 5249: 7285, 3702: 6224, 5361: 4214, 4356: 3608, 3292: 3814, 5675: 4728, 2783: 4563, 3303: 3581, 4166: 1112, 5179: 3336, 4456: 4612, 4778: 2246, 1866: 3177, 4736: 751, 5728: 1948, 5550: 2391, 1666: 1564, 5657: 1338, 4933: 2125, 4729: 4471, 3141: 1982, 4760: 8870, 4219: 3130, 3753: 1606, 4126: 338, 4411: 3413, 2465: 3346, 4143: 775, 4578: 8204, 1674: 1219, 3075: 5823, 3222: 2394, 5464: 3389, 3533: 4508, 2281: 5856, 2168: 3314, 5199: 4937, 5177: 7223, 4620: 2001, 4857: 426, 5535: 5226, 5416: 2337, 2953: 7155, 5328: 5159, 5334: 7, 5783: 1932, 3617: 1031, 4535: 2028, 2190: 2817, 2446: 7889, 4204: 360, 4294: 2188, 5240: 2287, 4531: 4689, 3462: 8444, 5125: 3949, 4680: 3155, 5336: 3226, 5599: 5425, 4987: 3841, 4570: 9262, 1002: 7320, 4053: 3701, 4612: 176, 4058: 3168, 5302: 2279, 5601: 4319, 4320: 1741, 5727: 2645, 5406: 2936, 2575: 6630, 4945: 1421, 2555: 8376, 3986: 4401, 5306: 3466, 4043: 4955, 4843: 5796, 5558: 2332, 5052: 6400, 4966: 2260, 3767: 5110, 4377: 1151, 4524: 2826, 862: 4485, 5030: 3710, 3741: 5002, 1667: 8774, 1964: 536, 2201: 1840, 4078: 8856, 3747: 718, 5441: 3342, 4885: 4062, 4141: 6981, 3232: 537, 4525: 4375, 2788: 3639, 5035: 5116, 2058: 2261, 3642: 2854, 4084: 1964, 2972: 5251, 4523: 2682, 4425: 2864, 3907: 2152, 5838: 1537, 3472: 3348, 1426: 6350, 2735: 1874, 5319: 2404, 5685: 4169, 4963: 3721, 4835: 200, 5970: 528, 3662: 1827, 2365: 926, 1618: 1793, 5706: 2800, 4003: 339, 4919: 4660, 5117: 3466, 2640: 1994, 3850: 6834, 5580: 2729, 3122: 2931, 5137: 1334, 1700: 5987, 5105: 4162, 5067: 1180, 3191: 1455, 2396: 2061, 1893: 1601, 3693: 4945, 2773: 2603, 5017: 3942, 5409: 2785, 3530: 513, 5344: 1453, 4122: 2290, 1733: 5046, 3709: 710, 5385: 5082, 5332: 157, 4780: 5655, 1441: 7065, 3768: 6488, 1488: 3659, 5081: 4114, 2139: 962, 4196: 3780, 3077: 6493, 4824: 129, 4586: 5117, 4641: 971, 4421: 1010, 2146: 946, 5423: 1945, 1461: 5991, 2546: 2688, 4467: 5580, 5646: 2933, 1791: 5377, 5330: 4530, 5598: 3596, 2879: 499, 5165: 553, 4302: 4601, 5686: 3892, 4742: 4792, 5803: 6757, 2592: 5356, 3879: 2509, 3697: 5140, 2217: 197, 5222: 1322, 3916: 710, 4557: 2887, 3972: 6313, 6066: 5891, 4902: 3000, 2672: 1312, 2292: 1810, 1649: 2246, 4486: 3119, 3696: 3050, 5984: 3400, 4770: 914, 3423: 2925, 4508: 1301, 226: 3090, 5695: 3081, 2490: 2298, 3490: 450, 4295: 5352, 2275: 1956, 5072: 957, 3974: 738, 4911: 1553, 4096: 3431, 4016: 457, 5511: 5209, 3012: 1797, 1783: 5109, 2126: 4932, 4259: 1369, 6050: 4906, 4567: 2751, 4767: 3958, 6014: 4686, 5624: 6018, 2994: 98, 5629: 231, 5370: 3429, 1318: 4509, 2176: 2425, 4602: 115, 1259: 4768, 3796: 718, 3419: 3801, 3208: 5838, 1978: 381, 6075: 4173, 3090: 2281, 4568: 2631, 5299: 5325, 3468: 2962, 5495: 2358, 2835: 1143, 1713: 3801, 2456: 1539, 5381: 7451, 2398: 7693, 6184: 1745, 5252: 2106, 5769: 2197, 5871: 5205, 5182: 492, 4460: 7996, 5084: 2019, 5687: 4965, 5708: 8186, 4784: 3928, 1204: 4062, 5760: 1261, 3354: 5750, 1322: 4732, 5064: 373, 4233: 3555, 5436: 7086, 5504: 2996, 4148: 2851, 4036: 6680, 5227: 7167, 2395: 3243, 2001: 5034, 6021: 4645, 1452: 1614, 4691: 6832, 3317: 490, 5267: 885, 5597: 5683, 4647: 4222, 5976: 2229, 5863: 2730, 3557: 3190, 3121: 5268, 4792: 4413, 5029: 2807, 5413: 5102, 942: 8585, 3404: 2298, 1093: 2735, 3714: 4658, 5945: 309, 2880: 3849, 2572: 1995, 6175: 995, 4538: 5213, 5439: 5128, 5940: 3876, 2427: 328, 5116: 6650, 2374: 2325, 2221: 4653, 4830: 5269, 4532: 2416, 3547: 1650, 2559: 3596, 5445: 1255, 717: 5724, 3194: 5711, 6325: 3612, 6290: 7270, 3290: 315, 5586: 1795, 4611: 7388, 2733: 4784, 5170: 8115, 4370: 4819, 4962: 789, 1855: 929, 5664: 396, 2226: 7957, 5899: 2453, 4937: 1625, 5859: 1369, 3153: 6443, 6383: 7839, 4951: 4900, 5402: 3703, 4178: 3235, 4592: 8476, 5531: 3478, 2440: 5894, 5414: 6110, 5432: 7044, 5696: 1563, 6138: 413, 4192: 2057, 5191: 4377, 6086: 5243, 4977: 2114, 4449: 990, 4771: 421, 3195: 2752, 2043: 5437, 3918: 3616, 6062: 1327, 5183: 6850, 3519: 1403, 3762: 8134, 4200: 1130, 3223: 2145, 6096: 6293, 5028: 3203, 3861: 4706, 3960: 5356, 4103: 4978, 6181: 3191, 6242: 3112, 5396: 2633, 4803: 3244, 5392: 6354, 4401: 5890, 5309: 2476, 5526: 6695, 2003: 1328, 5680: 6715, 4503: 3383, 5542: 1841, 1464: 4891, 4357: 5588, 6323: 3001, 3606: 5848, 4465: 1788, 2847: 3681, 4345: 430, 5204: 2057, 3706: 3151, 3366: 1647, 3537: 7269, 5892: 896, 4676: 457, 3365: 2357, 1737: 4697, 4598: 3309, 1254: 4753, 4116: 4718, 5562: 3256, 4928: 4486, 4285: 5905, 2271: 1769, 2966: 2146, 5767: 7238, 6041: 809, 2819: 2744, 5118: 1904, 3149: 5089, 4042: 2016, 6130: 5583, 6384: 251, 4049: 2380, 5234: 5499, 6215: 2032, 4764: 231, 4487: 4635, 3782: 5712, 6317: 1719, 5293: 5783, 838: 2021, 2005: 1833, 4755: 8129, 6178: 8982, 1577: 6788, 4913: 5131, 6219: 5840, 3224: 2045, 3600: 4273, 2227: 4019, 5603: 6259, 6277: 1510, 2215: 390, 4029: 407, 4635: 6886, 5261: 2639, 3479: 3019, 4413: 7768, 6040: 4240, 1842: 3952, 6264: 5775, 6509: 2275, 1965: 4963, 6468: 6279, 4875: 1335, 3270: 2860, 4368: 4854, 5073: 1631, 2310: 5579, 3954: 4727, 5876: 8195, 3120: 3955, 6421: 6699, 3132: 5910, 4291: 323, 3271: 1207, 5585: 5881, 6161: 784, 2514: 4877, 5220: 2855, 3367: 1537, 5074: 604, 5054: 5363, 6180: 5160, 4375: 5896, 3757: 6615, 6334: 8807, 3976: 4240, 5215: 4743, 5189: 2996, 4343: 6300, 701: 6481, 5343: 1642, 2924: 1328, 4633: 5618, 5346: 2975, 3932: 815, 5501: 852, 1889: 5379, 4369: 3268, 5367: 3160, 4604: 2369, 4851: 2894, 6098: 7234, 6505: 6304, 4510: 8247, 4844: 6372, 1861: 6223, 4551: 3360, 5272: 4131, 5963: 4655, 4432: 7942, 2808: 5425, 3811: 7245, 3927: 2460, 5850: 3834, 3522: 3850, 5278: 4118, 1420: 6495, 3679: 6532, 2831: 5332, 5247: 7746, 2302: 4384, 2431: 6179, 5156: 4048, 6320: 5623, 4606: 6211, 5553: 3978, 2468: 3532, 5431: 2176, 2290: 3107, 6285: 3937, 3928: 2152, 4881: 2949, 5913: 1683, 4101: 822, 2948: 2403, 3666: 3008, 6282: 6455, 4898: 2931, 4057: 7133, 5150: 2551, 4800: 3610, 5393: 7265, 5741: 2844, 5941: 5754, 4868: 6728, 3571: 6064, 6363: 4603, 5658: 7874, 3546: 3086, 4184: 2870, 4820: 6493, 4167: 4720, 2035: 2231, 5208: 2255, 5473: 6626, 3305: 1272, 4064: 6632, 5731: 3378, 4313: 6574, 6760: 402, 6386: 4769, 6581: 2560, 6478: 941, 6804: 6533, 2809: 6141, 3815: 2838, 6835: 5800, 6617: 4548, 3605: 5572, 6662: 7371, 5415: 3056, 3641: 2357, 5001: 5094, 2919: 6270, 2061: 5986, 3608: 2225, 5148: 5571, 845: 5125, 6818: 3906, 4848: 5015, 5750: 5973, 5517: 3330, 2999: 798, 6417: 2877, 2611: 2288, 4953: 4386, 4340: 6209, 4526: 1802, 3399: 2228, 6543: 4536, 2358: 5253, 6018: 4742, 5180: 1104, 901: 653, 3148: 4523, 5138: 600, 887: 973, 3637: 1654, 5079: 4666, 5921: 3031, 6675: 5367, 4242: 782, 4393: 2957, 5333: 2516, 4883: 2515, 6392: 2406, 4283: 4738, 6373: 4225, 2362: 4366, 6176: 4748, 4842: 2554, 4950: 4688, 3948: 2110, 1936: 1766, 2731: 5619, 4399: 5552, 3298: 3512, 6470: 6397, 5124: 1814, 5176: 4044, 4769: 2499, 6890: 3913, 4010: 3382, 6789: 5258, 3717: 4897, 1731: 405, 2614: 4413, 5341: 5602, 5608: 614, 5824: 1109, 5792: 1201, 6278: 3051, 4853: 9526, 2942: 4014, 3669: 2641, 4405: 3946, 2781: 4380, 6726: 3104, 1851: 4368, 6559: 8333, 4904: 4181, 5668: 6558, 6026: 1334, 5513: 5039, 1616: 4809, 792: 4257, 5549: 5277, 3009: 4638, 2872: 2826, 6227: 7476, 6002: 4935, 5593: 6527, 6799: 3404, 6792: 6992, 1373: 5842, 4104: 675, 979: 1133, 2729: 2348, 2567: 6133, 2585: 5207, 4876: 6929, 5033: 1364, 5270: 5586, 4656: 6335, 5784: 4812, 5934: 6383, 5503: 566, 6676: 3306, 5833: 956, 3978: 2872, 6511: 1040, 6744: 1516, 5058: 4679, 5005: 3889, 1822: 36, 4621: 2164, 4517: 1264, 4952: 6983, 2741: 1256, 4222: 2034, 5070: 3005, 2415: 6776, 6973: 6971, 3048: 1085, 5112: 5324, 6670: 1421, 5762: 2463, 2865: 1292, 5587: 3090, 1922: 996, 6319: 2521, 6852: 6385, 4697: 5696, 3517: 554, 823: 401, 4550: 901, 6725: 5739, 6783: 5522, 5304: 1421, 4395: 1489, 5201: 3857, 7055: 3560, 2481: 9095, 5965: 1495, 4272: 2534, 2886: 2470, 2143: 1927, 5246: 5268, 2053: 3211, 5822: 1165, 5499: 3525, 5442: 2405, 3860: 4897, 6377: 2063, 4372: 3613, 2964: 1159, 7121: 3721, 5110: 5539, 577: 1287, 4045: 7110, 5547: 4147, 2243: 2017, 6283: 8633, 5802: 6463, 7021: 775, 4025: 4135, 4976: 8487, 6751: 4364, 6350: 6800, 6845: 830, 3387: 787, 2959: 6725, 6557: 6467, 4617: 6092, 542: 3783, 5263: 5993, 7042: 7009, 2399: 5076, 4039: 5449, 3471: 2960, 6497: 3273, 6964: 5446, 6952: 3121, 2856: 3367, 5338: 4538, 3083: 5957, 3829: 3178, 5848: 704, 6389: 339, 6958: 5984, 4054: 4592, 5372: 4088, 2755: 3758, 3072: 3941, 1708: 1925, 4111: 2447, 3901: 2583, 4905: 5476, 4008: 522, 4424: 2139, 4349: 717, 3282: 5156, 2907: 2309, 6012: 4300, 3185: 287, 5705: 66, 4085: 6139, 4498: 2969, 5133: 988, 2192: 5859, 4267: 2081, 3873: 4437, 6552: 1932, 6422: 816, 4128: 5582, 7144: 4248, 3382: 4789, 6035: 158, 598: 1677, 5901: 41, 5857: 6851, 6981: 6273, 2658: 3878, 5041: 1555, 5878: 1905, 5640: 609, 3470: 327, 6195: 7139, 6817: 601, 6625: 5952, 644: 2819, 6461: 171, 4358: 5455, 4684: 6349, 5908: 3446, 4014: 2558, 1764: 378, 5947: 591, 6644: 2412, 7090: 5036, 6513: 5151, 5843: 2544, 5505: 4765, 6684: 1233, 4813: 3597, 4074: 4449, 4682: 955, 2151: 3612, 7034: 1255, 3251: 7186, 3137: 5656, 5702: 6427, 6047: 6348, 3764: 2813, 5108: 5324, 4301: 2224, 4298: 153, 4643: 6667, 5937: 417, 7269: 39, 5524: 2212, 5478: 5657, 5793: 3732, 2922: 3557, 4081: 3262, 5975: 5028, 3358: 8852, 6517: 518, 5198: 217, 6079: 4222, 7339: 2767, 6322: 1409, 5751: 977, 7051: 4823, 7297: 5390, 2905: 3818, 4554: 683, 3946: 3007, 4564: 957, 2241: 4682, 7243: 2001, 6375: 3602, 2471: 4691, 3326: 5607, 3161: 5299, 5040: 1852, 2512: 7004, 7230: 3243, 5205: 2612, 5280: 6500, 5794: 1783, 323: 2553, 6945: 2547, 1593: 1324, 4967: 3648, 4971: 4089, 5484: 1673, 5953: 592, 6553: 7253, 7291: 1235, 4238: 4083, 5281: 274, 6316: 3951, 6563: 7096, 6584: 5161, 5289: 5264, 1462: 2980, 4677: 6724, 7199: 3916, 5143: 5721, 5472: 3533, 3458: 5081, 3528: 5812, 6081: 2584, 6738: 6592, 2309: 8319, 3236: 4146, 3874: 3057, 3854: 6382, 3484: 5654, 270: 3182, 7326: 2991, 5528: 2142, 4205: 2087, 2224: 5252, 6885: 4369, 7156: 2304, 6064: 578, 2866: 946, 5656: 3679, 6976: 5525, 5790: 1552, 3346: 7499, 7318: 1366, 2990: 6960, 5992: 3137, 5011: 256, 1690: 2399, 6708: 1295, 3868: 4886, 5978: 6554, 6545: 7231, 3453: 6774, 5974: 7457, 2162: 2611, 3880: 6720, 2444: 723, 6173: 1378, 3832: 1546, 2389: 5220, 3115: 7057, 6627: 6580, 5068: 6474, 3409: 1169, 3262: 2775, 5418: 5929, 6695: 2315, 5781: 5847, 6550: 3192, 6204: 3890, 7562: 689, 5738: 5443, 2234: 4042, 7309: 7359, 3056: 4422, 7196: 5043, 4795: 3126, 5900: 5766, 4658: 7200, 1640: 3748, 6542: 3720, 4462: 5485, 4717: 6414, 6663: 2043, 3005: 7518, 3659: 4401, 6540: 4706, 2532: 6406, 7539: 3350, 5021: 3453, 6396: 4301, 4679: 3538, 6946: 285, 3995: 6361, 3775: 2997, 2394: 1145, 3897: 6995, 3725: 352, 3357: 3784, 4572: 5900, 5384: 3253, 6961: 1007, 6701: 2725, 6657: 230, 5490: 5914, 5994: 4186, 7019: 3322, 6719: 6094, 3302: 6262, 4614: 3853, 4274: 5920, 4174: 531, 6432: 344, 6957: 3732, 3765: 5580, 7530: 6925, 2507: 2601, 7128: 6140, 1088: 2512, 6936: 8027, 4427: 6662, 5529: 296, 5904: 4740, 6529: 6829, 3887: 5722, 3139: 4936, 5275: 6470, 6948: 331, 7438: 2436, 7355: 1148, 4996: 1725, 7603: 2314, 4229: 1471, 6986: 3910, 4282: 5238, 4593: 2543, 7088: 8216, 7077: 3428, 1695: 4173, 5424: 5749, 7069: 2746, 6987: 957, 4469: 6864, 2483: 7439, 6165: 7804, 3827: 5841, 7474: 7678, 7396: 2244, 6739: 8045, 7143: 7498, 7028: 3245, 6286: 6244, 5060: 6145, 1589: 4040, 6787: 122, 4922: 4746, 4839: 3930, 7592: 4046, 1995: 5102, 7314: 3636, 5936: 754, 7617: 5828, 4118: 1512, 2522: 9143, 6240: 2749, 3975: 4284, 6106: 519, 6686: 5361, 7731: 1816, 4466: 5826, 2494: 1072, 7288: 2460, 6589: 3181, 7542: 3936, 7039: 4153, 7368: 2005, 2845: 7063, 2404: 3057, 6346: 4692, 1953: 2281, 4745: 5074, 5398: 6842, 294: 395, 7737: 4641, 7180: 5655, 5171: 5105, 5614: 7180, 617: 7697, 7527: 196, 5109: 2239, 2052: 355, 2898: 6180, 4475: 5826, 3018: 6861, 6640: 1479, 4338: 511, 6225: 7947, 2473: 1464, 6768: 1982, 7504: 6911, 7432: 2872, 6730: 4526, 7044: 5879, 4804: 133, 7805: 7015, 6710: 872, 4504: 195, 2638: 164, 5996: 2747, 2607: 3593, 1949: 6620, 5460: 720, 7597: 6603, 5339: 2999, 7124: 1196, 7390: 4474, 4726: 1059, 7280: 3917, 2568: 8219, 2244: 3323, 4974: 758, 7754: 5854, 5902: 6900, 3476: 5184, 7464: 7310, 6366: 1039, 7084: 7519, 3773: 1108, 2285: 7032, 6992: 3112, 3564: 1975, 6172: 6056, 4362: 194, 2467: 3867, 6857: 6743, 2923: 4071, 3653: 5570, 7424: 4947, 4269: 492, 6344: 704, 1507: 5645, 4227: 588, 5364: 4060, 7187: 2907, 6274: 2827, 7221: 3984, 940: 834, 5196: 1579, 1716: 3410, 574: 5430, 6141: 4503, 6359: 5830, 6052: 3173, 3323: 5700, 6979: 2564, 6615: 3339, 7188: 1138, 6314: 4358, 6059: 2449, 6984: 2707, 3107: 1205, 3921: 2032, 6834: 2410, 6301: 7152, 6492: 2185, 1789: 5922, 946: 5273, 2402: 2540, 7705: 3650, 4352: 276, 2376: 3789, 4915: 3479, 7439: 4898, 7928: 1056, 7774: 2149, 2370: 4410, 6127: 557, 4198: 4099, 5015: 2088, 7914: 374, 5037: 7477, 7049: 4184, 4889: 33, 5763: 6147, 3507: 5522, 2204: 624, 4316: 4530, 7138: 3074, 4811: 501, 6019: 846, 6679: 4574, 3039: 1367, 7002: 480, 4290: 2773, 3551: 4294, 7699: 2299, 6004: 4970, 6436: 5428, 7888: 1265, 7523: 57, 6903: 5768, 6753: 4713, 5667: 5238, 6192: 6477, 5552: 3533, 5454: 5134, 2528: 376, 3836: 7457, 5779: 5910, 7099: 2681, 7477: 6342, 5004: 4052, 6429: 3952, 6534: 1808, 7835: 1178, 7134: 8516, 5062: 5769, 6142: 1949, 2131: 3189, 7811: 3494, 5002: 5102, 6020: 533, 6385: 1284, 5967: 1805, 2612: 2961, 7894: 1055, 6841: 6873, 6881: 114, 7717: 8319, 7211: 5135, 5560: 4473, 7410: 4750, 6902: 588, 7308: 4425, 5422: 7450, 5739: 4044, 7974: 5779, 4569: 5746, 8026: 126, 6332: 5154, 6842: 5786, 3095: 7603, 7566: 787, 6772: 1872, 7672: 254, 7469: 2804, 6447: 2104, 5238: 972, 7333: 3325, 7347: 4701, 7052: 4189, 7878: 931, 7942: 81, 6410: 370, 6991: 3800, 7427: 2139, 3819: 1766, 2253: 1287, 5301: 5069, 7449: 7096, 4211: 6035, 7375: 2231, 3980: 170, 6476: 8608, 3621: 4915, 3375: 7380, 8081: 6274, 6440: 7895, 482: 6152, 2662: 4384, 7538: 385, 4918: 7448, 6855: 790, 2140: 4280, 7725: 1706, 4925: 1832, 6628: 2403, 7250: 3832, 1803: 7594, 7899: 3805, 2133: 8104, 4176: 7525, 7283: 3651, 6340: 5949, 4018: 6765, 5395: 6451, 7510: 2996, 3337: 8149, 3895: 7453, 4560: 1601, 2451: 5481, 6251: 7580, 5869: 2280, 5759: 2940, 6402: 3835, 2631: 4209, 7923: 1338, 2930: 6272, 8024: 7627, 2746: 1056, 1363: 7461, 4970: 3637, 3898: 3358, 4453: 6962, 7351: 5903, 3943: 1913, 5736: 3306, 5832: 7980, 7547: 5234, 7707: 23, 6273: 5261, 7854: 3776, 7023: 3573, 3707: 8071, 3931: 3671, 5083: 3307, 5426: 187, 7160: 7860, 7901: 199, 1805: 3916, 5959: 5947, 7209: 2550, 3376: 8005, 4926: 1905, 5998: 3148, 7551: 304, 6376: 6489, 6546: 3279, 7342: 7533, 4100: 2014, 5169: 7143, 2130: 1057, 7688: 2538, 5733: 1604, 4809: 8115, 7755: 1197, 6923: 7346, 5305: 8465, 1510: 4023, 7140: 7627, 4186: 657, 4287: 7452, 1597: 2114, 5014: 570, 7998: 2134, 5539: 3411, 1703: 944, 5786: 6784, 7730: 1860, 8040: 433, 6813: 1094, 7771: 4920, 4496: 7586, 7461: 1827, 6395: 1653, 3296: 3708, 5479: 5635, 5849: 4489, 7587: 7708, 3607: 7708, 2311: 7766, 8030: 6859, 3105: 7080, 6715: 7439, 4505: 5402, 4816: 3574, 3615: 3374, 8190: 5145, 6656: 4800, 8210: 7584, 7281: 7643, 8105: 2594, 6034: 6687, 4943: 5268, 7651: 681, 6607: 1526, 5979: 8022, 7804: 406, 2350: 2256, 5154: 3370, 4759: 6537, 2245: 1407, 2921: 4644, 3177: 2277, 1280: 5013, 3982: 623, 8230: 5070, 7511: 5198, 4541: 8157, 8310: 6214, 7770: 3628, 6171: 1086, 6641: 3191, 5404: 962, 4903: 7286, 4323: 7007, 1854: 6630, 7812: 567, 5288: 289, 7220: 5164, 2272: 1532, 6186: 6961, 7710: 115, 3640: 993, 8018: 8520, 3443: 3338, 6887: 1828, 4815: 1285, 8306: 2778, 1807: 1837, 2904: 50, 3758: 3689, 4994: 4638, 5897: 7572, 5929: 4483, 5692: 2108, 6135: 3041, 8345: 278, 8336: 3287, 3933: 2732, 7247: 5415, 6776: 4261, 5258: 3960, 6645: 414, 4420: 6099, 8194: 4865, 4638: 2055, 7697: 1262, 3592: 4107, 5172: 5920, 8390: 3936, 7431: 4066, 3304: 6587, 6803: 6867, 3086: 5878, 7514: 2998, 6379: 8322, 7889: 3160, 8460: 7245, 6502: 2609, 7675: 3379, 4837: 8047, 6621: 3459, 7545: 5482, 7780: 2900, 5210: 5360, 6196: 2437, 3694: 8342, 8396: 553, 7615: 5665, 4993: 6282, 5955: 1265, 7259: 662, 4847: 3299, 8304: 4964, 3754: 7045, 7337: 245, 174: 5610, 8262: 4193, 7492: 2220, 1711: 1877, 8334: 244, 5540: 8214, 2968: 8288, 7306: 1864, 7341: 270, 2006: 2465, 1620: 559, 7440: 1677, 6032: 3611, 7116: 2939, 2369: 6993, 8255: 1103, 805: 5663, 5575: 1467, 7300: 5171, 6939: 6922, 4596: 7348, 2521: 1100, 8207: 4537, 6115: 5336, 1248: 1449, 3004: 8359, 7909: 8173, 6702: 3578, 3133: 4388, 7248: 7729, 2600: 7574, 7932: 2967, 8096: 2923, 4980: 8336, 5625: 5617, 4825: 1592, 7261: 6369, 7515: 871, 2911: 8445, 4797: 694, 4262: 683, 6333: 742, 5474: 3866, 4461: 2442, 6329: 8719, 8196: 2007, 1275: 820, 2430: 5305, 7496: 5949, 8327: 1250, 7406: 4604, 4852: 4908, 3103: 3320, 3169: 7538, 7579: 3945, 7215: 6393, 6361: 7046, 2493: 7536, 8359: 2439, 6092: 6303, 3674: 7155, 7836: 634, 5076: 5564, 5987: 1488, 5721: 679, 6586: 7058, 7594: 4758, 5228: 2299, 8602: 6092, 8660: 5332, 2232: 4472, 3015: 7578, 8430: 7081, 3065: 4795, 6058: 5563, 7870: 4396, 7111: 1531, 7322: 4771, 6700: 3464, 6541: 2804, 8449: 2010, 3578: 1643, 7320: 3698, 3359: 1473, 7629: 1804, 7384: 33, 8088: 350, 5388: 1826, 7411: 5029, 7893: 2985, 7338: 8416, 2641: 1081, 5885: 2489, 6169: 2067, 4418: 1495, 7749: 1204, 8563: 4948, 5891: 7563, 5818: 8865, 3562: 2410, 8767: 6941, 5139: 4717, 6356: 6565, 8520: 6096, 4355: 5203, 8097: 3203, 1019: 7932, 3521: 1333, 1261: 2709, 4931: 4188, 4908: 7721, 1770: 6735, 5283: 5851, 3955: 8399, 8155: 3899, 6469: 8632, 8295: 8055, 4133: 5506, 8122: 3095, 1909: 732, 8038: 3392, 7783: 2499, 4444: 2126, 5545: 637, 5621: 1082, 7422: 3703, 7648: 6584, 4202: 5717, 4136: 341, 5615: 7349, 7517: 6039, 4703: 5918, 6292: 2963, 7574: 6197, 7612: 5176, 2955: 2259, 8424: 447, 6854: 1571, 7719: 8401, 3602: 7571, 8288: 1144, 2757: 697, 8023: 4227, 7437: 351, 8501: 6887, 5761: 6619, 7622: 489, 2588: 7681, 7412: 3268, 4438: 1942, 534: 8124, 8507: 8162, 6869: 4443, 5836: 1041, 1133: 2286, 6642: 1662, 5285: 1225, 3636: 2074, 2326: 1477, 7335: 3386, 3510: 7879, 5530: 8785, 8598: 8172, 7792: 4048, 8595: 5183, 8662: 517, 2100: 8420, 6767: 2807, 8706: 8419, 8532: 1246, 4367: 3177, 7257: 2186, 7704: 8215, 5709: 2477, 7512: 5663, 3552: 8316, 4630: 4944, 5699: 5104, 8633: 5074, 4666: 7604, 3631: 6251, 7324: 2939, 2425: 8265, 5618: 6416, 8313: 3678, 3264: 5156, 8601: 368, 476: 1411, 8535: 902, 6042: 2404, 7540: 4175, 8786: 6820, 5497: 7227, 8558: 1533, 7885: 8163, 7667: 1687, 7871: 4177, 8279: 7092, 8406: 8133, 3038: 687, 8703: 6598, 7585: 5043, 6331: 6455, 8882: 4626, 1596: 337, 3909: 6261, 4862: 4097, 6999: 3161, 8756: 7146, 4501: 5953, 1591: 6709, 6537: 2145, 6749: 762, 1627: 1891, 8042: 2577, 7519: 5284, 8580: 9, 4428: 6591, 7159: 1570, 7810: 1238, 4365: 3488, 5809: 8968, 1973: 1446, 8683: 5057, 7441: 3524, 6564: 8785, 8397: 4154, 1571: 4396, 6031: 7115, 8488: 2266, 3817: 5943, 7782: 391, 8909: 3622, 8364: 2847, 6906: 1776, 6131: 4868, 5561: 6183, 7911: 6724, 7171: 2836, 3242: 3478, 1841: 1278, 8454: 3960, 7087: 8281, 3878: 7991, 6521: 4173, 3720: 89, 9018: 1987, 8500: 7384, 6794: 2259, 8961: 3512, 7246: 6160, 653: 4635, 8757: 8174, 8775: 7280, 6446: 1094, 4613: 7074, 2696: 2822, 2557: 3643, 6238: 2736, 6807: 4452, 8480: 8845, 4066: 7717, 3585: 8426, 7208: 1462, 8029: 1972, 4958: 5110, 7400: 4486, 2510: 748, 7508: 2794, 3969: 5308, 6143: 5914, 7258: 210, 7925: 7542, 3379: 8919, 6762: 8591, 2747: 7761, 1808: 3659, 7662: 4473, 8407: 3864, 6105: 1063, 2581: 4245, 5448: 6194, 8377: 3485, 4021: 2771, 6206: 4750, 7689: 2490, 4992: 8695, 7108: 6596, 7700: 2067, 2380: 7201, 8244: 8593, 5827: 2611, 8521: 8412, 6660: 5427, 6488: 29, 2119: 8784, 512: 6600, 855: 7934, 5989: 1071, 8036: 584, 5476: 3509, 3787: 870, 1222: 8028, 6720: 4518, 8032: 5541, 8916: 5752, 9096: 4267, 7348: 2346, 6426: 8102, 4932: 5712, 3930: 3383, 8655: 3015, 4047: 1121, 5966: 4374, 6353: 3698, 8203: 6752, 7094: 2379, 6212: 3003, 4097: 8383, 7262: 1133, 5881: 9079, 7856: 8271, 3451: 9050, 8878: 3019, 3446: 7287, 1574: 3262, 4728: 7988, 8776: 3093, 7887: 1796, 8245: 4693, 4892: 1836, 5854: 2045, 7419: 1232, 6796: 1954, 8831: 1069, 3856: 8985, 6988: 6932, 2237: 2011, 1025: 7646, 8126: 7764, 9125: 7639, 3234: 4317, 5654: 702, 8012: 392, 9226: 7886, 5155: 84, 6982: 8278, 7988: 1800, 6811: 4890, 8490: 5010, 7497: 917, 7761: 9267, 7056: 8776, 6705: 8270, 9200: 7318, 6063: 3665, 8630: 3527, 2901: 4693, 7970: 5835, 9052: 425, 8755: 5367, 7015: 674, 4500: 9142, 2170: 3172, 3638: 1770, 6874: 3322, 7078: 2316, 8750: 1404, 7732: 7137, 7627: 8585, 6507: 9287, 7756: 6493, 9235: 8372, 6100: 4317, 8686: 7097, 7154: 259, 4751: 6967, 7135: 8125, 3947: 1399, 5308: 5870, 5864: 3220, 6122: 8535, 3473: 3183, 8516: 8582, 8995: 3736, 8597: 2627, 5375: 4953, 7722: 6842, 7198: 772, 4169: 8930, 6978: 706, 7179: 8747, 7949: 314, 5010: 126, 8974: 8712, 5134: 9292, 4005: 6020, 5042: 4828, 2368: 636, 4201: 8002, 8782: 9173, 8181: 8237, 8053: 7494, 5920: 8721, 3910: 6249, 7430: 4461, 7146: 9049, 8514: 8769, 8243: 5186, 1704: 557, 8628: 3709, 6431: 8552, 9291: 8959, 6808: 5202, 1013: 4944, 6441: 3822, 9074: 1198, 6465: 168, 7073: 1135, 6793: 623, 8098: 5885, 8844: 6290, 7206: 6048, 4077: 9348, 3437: 8013, 2899: 6773, 1379: 2616, 1675: 7843, 7907: 9051, 4599: 2874, 5520: 2886, 4626: 7006, 6575: 2335, 6620: 8398, 8319: 1178, 8666: 8241, 8701: 1571, 8617: 5520, 5162: 2913, 8134: 8315, 2807: 7002, 5251: 263, 671: 4955, 8337: 2725, 6931: 2233, 6053: 8434, 1232: 7056, 6661: 554, 8620: 5584, 2834: 2320, 5956: 2901, 5345: 7144, 2577: 9194, 5669: 1478, 5957: 1737, 7483: 8128, 4873: 3477, 5613: 1579, 4297: 8942, 6193: 6858, 8128: 6240, 7997: 4078, 9177: 7859, 9315: 1538, 6101: 2808, 2595: 672, 5554: 413, 3042: 8149, 7212: 9202, 5641: 6832, 8019: 8807, 7385: 5951, 2639: 6076, 9276: 4519, 8929: 5038, 6630: 699, 1741: 6493, 8799: 5829, 2815: 9337, 5466: 6298, 7757: 2091, 5874: 2279, 5013: 8072, 3029: 2939, 8080: 5958, 9419: 9297, 2601: 9436, 4244: 1482, 9048: 1307, 5846: 7831, 7505: 1064, 4038: 4366, 4439: 7617, 5187: 2804, 8550: 2642, 3196: 8877, 6907: 9334, 4412: 4259, 3824: 9430, 3474: 6404, 6217: 2054, 6119: 8328, 9522: 5545, 7736: 5099, 4901: 3284, 6732: 6665, 7451: 5013, 8774: 3433, 8817: 8670, 7358: 2111, 1960: 4560, 6724: 8509, 5433: 6737, 8606: 6477, 7057: 4425, 7748: 6898, 7175: 7799, 6594: 671, 7920: 7733, 4880: 4216, 7646: 1390, 2169: 1519, 1788: 5312, 9227: 6462, 8789: 3240, 6154: 1625, 6862: 2918, 8158: 8905, 2762: 7975, 3683: 9397, 8117: 4992, 4506: 1346, 4035: 249, 7407: 7825, 4473: 4355, 6558: 3906, 9400: 4942, 7641: 1854, 8688: 6668, 4209: 8542, 8803: 884, 7233: 103, 8888: 7666, 5131: 9144, 7621: 5157, 8680: 710, 5113: 8298, 9483: 4915, 6183: 3897, 7992: 6321, 5104: 9396, 7025: 3827, 7647: 1892, 4998: 3207, 9046: 2969, 7576: 7909, 7720: 5932, 1752: 4915, 9496: 5806, 6428: 5217, 7844: 7946, 8884: 6624, 3297: 9231, 5097: 5533, 6825: 67, 6388: 3104, 8770: 7270, 3886: 92, 1762: 5662, 8436: 6049, 4670: 1398, 7521: 8683, 9285: 6537, 9064: 7748, 7786: 3793, 8315: 1177, 6908: 7713, 6364: 6077, 6267: 116, 7921: 7344, 8256: 2896, 7176: 6076, 3965: 6540, 8975: 8924, 5919: 5634, 8431: 1539, 4150: 6477, 7486: 9431, 3398: 394, 7416: 814, 3942: 738, 8231: 2348, 1183: 3055, 1639: 7130, 8333: 7471, 2699: 9335, 8044: 3131, 7665: 4682, 7076: 9127, 7100: 4887, 8205: 6602, 4718: 4870, 7354: 8633, 6844: 2746, 7851: 4263, 9300: 4908, 8537: 3113, 4561: 3485, 8977: 8797, 5012: 6091, 7571: 5251, 7003: 2364, 2506: 3112, 5453: 653, 3184: 4290, 7286: 1529, 6576: 4459, 2848: 4742, 5085: 6608, 5581: 1369, 5971: 3088, 5678: 8682, 9214: 655, 5720: 3198, 8971: 793, 6304: 6376, 7693: 3631, 7185: 8474, 9582: 2789, 2739: 3601, 6826: 8898, 2334: 1171, 5212: 4106, 3313: 5969, 7966: 9765, 6786: 7659, 7167: 3272, 5756: 7387, 7789: 3020, 9416: 3118, 8522: 3849, 143: 6075, 7583: 6575, 6643: 586, 8777: 8345, 9625: 9326, 6456: 7901, 9595: 7579, 5583: 3132, 1423: 3660, 5312: 9689, 2605: 8440, 6544: 337, 6287: 3732, 5590: 3539, 6262: 1495, 9703: 8853, 6302: 139, 6830: 3038, 7234: 3113, 8422: 4295, 9464: 825, 3686: 3926, 2070: 6797, 6634: 7636, 9323: 1338, 5933: 1696, 4214: 5601, 5574: 700, 8035: 9002, 3157: 9125, 7204: 5453, 8093: 9618, 7881: 5408, 9667: 5471, 6997: 7617, 5207: 8771, 2379: 2520, 4022: 7666, 4063: 795, 8717: 7180, 5515: 945, 5776: 4403, 9528: 7226, 3312: 4352, 6674: 7792, 5405: 6164, 7178: 1246, 3560: 2083, 1986: 9368, 8981: 2147, 9171: 2977, 1794: 1299, 8361: 2603, 7968: 6082, 7817: 4138, 5870: 5164, 8816: 1845, 5379: 9694, 7816: 6103, 7601: 6248, 8360: 3392, 4579: 5795, 9206: 2580, 9875: 3535, 7061: 8454, 4002: 525, 6847: 7036, 5435: 6778, 6336: 4526, 4865: 2711, 1887: 8363, 6843: 7564, 6689: 6653, 7030: 3461, 9767: 851, 6518: 9641, 4754: 9631, 3214: 7091, 8649: 3783, 8970: 1824, 7043: 6435, 7445: 3885, 8292: 7396, 6397: 7596, 5467: 2379, 2239: 4960, 9829: 5915, 3708: 4656, 5023: 8674, 5086: 8714, 6814: 8084, 9241: 313, 5602: 3648, 4671: 7449, 2294: 7594, 8546: 8071}
Dans cette partie , nous allons voir comment itérer sur un dictionnaire.
La méthode values
Pour obtenir l'ensemble des valeurs sous la forme d'une structure de données itérable d'un dictionnaire
d
, on utilise la méthode values
.
La donnée structurée ainsi récupérée est de type dict_values
, c'est un objet itérable mais
non
indexé.
Déterminer la moyenne de bob à l'aide d'une fonction moy(res)
Python
La méthode keys
Pour obtenir la liste (de type dict_keys) d'un objet dictionnaire d
on écrit :
d.keys()
res={'nsi' :18,'maths':17,'svt':14,'français':14,'lv1':8,'physique':12,'HG':11}
for i in res.keys():
print(i)
La méthode items()
Pour obtenir l'ensemble du dictionnaire sous forme d'une donnée itérable on utilise la méthode
items
d.items()
res={'nsi' :18,'maths':17,'svt':14,'français':14,'lv1':8,'physique':12,'HG':11}
for i in res.items():
print(i)
Par défaut un dictionnaire est itérable mais alors on itère uniquement sur les clés. Ce qui justifie l'existence de la méthode items
res={'nsi' :18,'maths':17,'svt':14,'français':14,'lv1':8,'physique':12,'HG':11}
for i in res():
print(i)
Réaliser un affichage des notes de Bob qui ressemble à cela :
Pour supprimer une élément d'un dictionnaire on écrit :
del(d[cle_a_suppr])
Supprimer le Français des résultats de Bob.
L'opérateur &
L'opérateur &
permet de trouver les valeurs communes des données obtenues avec les
méthode
keys, values ou items de deux dictionnaires.
Il s'utilise ainsi :
d1={'10km':'lundi','fractionné 1h ':'mardi','15km':'Jeudi', '1h':'Jeudi', 'tranquille':'Samedi'}
d2={'15km':'lundi','fractionné 2h ':'mardi','10km':'Jeudi', '1h':'Jeudi', 'tranquille':'dimanche'}
d1.keys() & d2.keys()
d1.values() & d2.values()
d1.items() & d2.items()
Voici une citation célèbre de Gandhi :
La vie est un mystère qu'il faut vivre, et non un problème à résoudre.
Créer un dictionnaire qui associe à chaque lettre (clé) son occurrence (valeur). Par exemple la lettre 'a' apparait deux fois.
Par exemple dico= {'a':2, .........}
Fichiers Exif
ensemble
est une collection non ordonnée d'objets, contrairement aux séquences comme les listes et les tuples dans lesquels chaque élément est indexé. Un ensemble ne peut pas contenir de doublon.Faire des recherches sur le web pour la notion d'ensemble set
en python.
set
se déclare entre accolades. Exemple : a={} # Un ensemble vide
in
,
d'union |
, intersection &
, de différence -
Les ensembles de nombres vus à travers une activité sur les critères de divisibilité.
demo(n)
qui teste tous vos critères de divisibilité et qui affiche une réponse pour chaque critère.
Fluctuation des frèquences de succès. Animation tirée de l'espace Eduscol.
Ressources n°8 d'Eduscol
Quelques espaces vidéos