{"id":2719,"date":"2020-06-16T15:26:50","date_gmt":"2020-06-16T13:26:50","guid":{"rendered":"https:\/\/www.mathweb.fr\/euclide\/?page_id=2719"},"modified":"2023-04-16T16:19:25","modified_gmt":"2023-04-16T14:19:25","slug":"dictionnaire-python","status":"publish","type":"page","link":"https:\/\/www.mathweb.fr\/euclide\/dictionnaire-python\/","title":{"rendered":"Le dictionnaire en Python"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">C&rsquo;est quoi un dictionnaire en Python ? Il y a plusieurs types de variables, dont les <em>dictionnaires<\/em>. Nous n&rsquo;allons pas voir tout ce qu&rsquo;il est possible de faire avec un dictionnaire, mais nous allons, \u00e0 travers un exemple concret, voir comment manipuler un tel type de variables.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Introduction au dictionnaire Python<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Un dictionnaire peut \u00eatre d\u00e9clar\u00e9 de deux fa\u00e7ons en Python:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"dracula\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"false\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">my_dico = dict()\n# ou\nmy_dico = {}<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Ce type de variable sert \u00e0 construire une sorte de collection de connexions. D&rsquo;ailleurs, le mot <em>dictionnaire<\/em> (\u00ab\u00a0dico\u00a0\u00bb pour les intimes) est explicite. Dans un dico, \u00e0 chaque mot est associ\u00e9e une d\u00e9finition. C&rsquo;est la m\u00eame logique en informatique : \u00e0 chaque objet ins\u00e9r\u00e9 dans le dico (ce peut \u00eatre un cha\u00eene de caract\u00e8res, un nombre, un bool\u00e9en, &#8230;) est associ\u00e9 un autre objet (non n\u00e9cessairement du m\u00eame type). Par exemple on peut d\u00e9finir le dictionnaire suivant:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"dracula\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"false\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">dico = { 'toto' : 'tata' , 'titi' : 4 , 35.5 : True}<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">dans lequel on associe:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>&lsquo;tata&rsquo; (de type <em>string<\/em>) \u00e0 &lsquo;toto&rsquo; (de type <em>string<\/em>);<\/li><li>4 (de type <em>int<\/em>) \u00e0 &lsquo;titi&rsquo; (de type <em>string<\/em>);<\/li><li>True (de type <em>bool<\/em>) \u00e0 35 (de type <em>float<\/em>).<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">On peut donc associer n&rsquo;importe quoi \u00e0 n&rsquo;importe quoi, \u00e0 l&rsquo;instar d&rsquo;une liste o\u00f9 l&rsquo;on peut ins\u00e9rer n&rsquo;importe quel type de variables. Dans cet exemple, <\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>&lsquo;toto&rsquo;, &lsquo;titi&rsquo; et 35.5 sont des <em>cl\u00e9s<\/em> (<em>key<\/em> en anglais);<\/li><li>&lsquo;tata&rsquo;, 4 et True sont les <em>valeurs<\/em> associ\u00e9es aux cl\u00e9s.<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Pour avoir acc\u00e8s aux valeurs d&rsquo;une cl\u00e9, on tapera:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"dracula\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"false\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">dico[&lt;cl\u00e9>]<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Pour parcourir un dictionnaire python et afficher toutes ses cl\u00e9s, on \u00e9crira par exemple:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"dracula\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"false\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">for key in dico:\n    print(key)<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">qui retourne dans notre cas:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">toto\ntiti\n35.5<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Pour afficher les cl\u00e9s et les valeurs, on pourra \u00e9crire:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"dracula\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"false\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">for key in dico:\n    print('{} : {}'.format(key,dico[key]))<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">ou encore:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"dracula\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"false\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">for key, value in dico.items():\n    print('{} : {}'.format(key,value))<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">qui affichent:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">toto : tata\ntiti : 4\n35.5 : True<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Application<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Nous allons partir d&rsquo;un fichier texte contenant un po\u00e8me de Paul Verlaine, <em>Ariette III<\/em> :<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Il pleure dans mon c\u0153ur<br>Comme il pleut sur la ville;<br>Quelle est cette langueur<br>Qui p\u00e9n\u00e8tre mon c\u0153ur ?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u00d4 bruit doux de la pluie<br>Par terre et sur les toits!<br>Pour un c\u0153ur qui s\u2019ennuie,<br>\u00d4 le chant de la pluie!<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Il pleure sans raison<br>Dans ce c\u0153ur qui s\u2019\u00e9c\u0153ure.<br>Quoi ! nulle trahison ?\u2026<br>Ce deuil est sans raison.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">C\u2019est bien la pire peine<br>De ne savoir pourquoi<br>Sans amour et sans haine<br>Mon c\u0153ur a tant de peine!<\/p>\n\n\n\n<div class=\"wp-block-file aligncenter\"><a href=\"https:\/\/www.mathweb.fr\/euclide\/wp-content\/uploads\/2020\/06\/poeme.txt\">poeme<\/a><a href=\"https:\/\/www.mathweb.fr\/euclide\/wp-content\/uploads\/2020\/06\/poeme.txt\" class=\"wp-block-file__button\" download>T\u00e9l\u00e9charger<\/a><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Mon objectif est de compter les mots de ce fichier, en excluant les ponctuations et en ne retenant que ce qui suit une apostrophe (donc \u00ab\u00a0C&rsquo;est\u00a0\u00bb sera compt\u00e9 pour \u00ab\u00a0est\u00a0\u00bb). Ensuite, je souhaite construire un diagramme en barres montrant le nombre d&rsquo;occurrences des mots qui se r\u00e9p\u00e8tent au moins deux fois.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Une fonction qui \u00e9limine les signes de ponctuation<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Avant tout, je dois cr\u00e9er une fonction qui \u00e9limine le superflu :<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"dracula\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"false\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">list_of_ponct = [ '.' , ';' , '!' , '?' , ',' , ':' , '\\n' ]\n\ndef del_ponct(mot):\n    for letter in mot:\n        if letter in list_of_ponct:\n            mot = mot.replace(letter,'')\n            \n    return mot<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Je d\u00e9finis une liste dans laquelle je mets tous les signes que je veux exclure. Ne pas oublier le \u00ab\u00a0\\n\u00a0\u00bb (retour \u00e0 la ligne dans un fichier texte).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">La logique de ma fonction est la suivante : je parcours le mot mis en argument (avec la boucle <em>for letter in mot<\/em>) et je teste les lettres pour savoir si elles sont dans ma \u00ab\u00a0liste noire\u00a0\u00bb (<em>if letter in list_of_ponct<\/em>), auquel cas je la remplace par le vide (comme dans le cerveau du 45\u00e8me pr\u00e9sident des \u00c9tats-Unis d&rsquo;Am\u00e9rique). Une fois sorti de la boucle, donc une fois toutes les lettres du mot scann\u00e9es, je retourne le mot obtenu.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Construction du dictionnaire Python<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Je souhaite construire un dictionnaire ayant pour cl\u00e9s tous les mots du fichier et pour valeurs, leurs occurrences.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"dracula\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">with open('poeme.txt' , encoding = 'utf8') as f:\n    for line in f:\n        words_in_line = line.split(' ')\n        for word in words_in_line:\n            word = del_ponct( word )\n            if \"'\" in word:\n                i = word.index(\"'\")\n                word = word[i+1:]\n            if word != '':\n                if word in mots:\n                    counter = mots[word] + 1\n                    mots[word] = counter\n                else:\n                    mots[word] = 1<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">J&rsquo;ouvre le fichier en mode lecture avec la fonction <em>open<\/em>. La ligne 1 signifie que le fichier que j&rsquo;ouvre est d\u00e9sign\u00e9 par la lettre <em>f<\/em> (pour une syntaxe plus l\u00e9g\u00e8re).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ensuite (ligne 2), je boucle sur ce fichier de ligne en ligne. La ligne 3 convertit la ligne courante en une liste de mots (la m\u00e9thode <em><a href=\"https:\/\/docs.python.org\/fr\/3\/library\/stdtypes.html?highlight=split#str.split\" target=\"_blank\" rel=\"noreferrer noopener\">split<\/a><\/em> appliqu\u00e9e \u00e0 une cha\u00eene de caract\u00e8res d\u00e9coupe celle-ci en fonction du caract\u00e8re inform\u00e9 en argument : ici, on d\u00e9coupe suivant les espaces).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ensuite (ligne 4), je boucle sur la liste derni\u00e8rement cr\u00e9\u00e9e; j&rsquo;enl\u00e8ve les ponctuations (ligne 5) et si une apostrophe se trouve dans le mot, je ne prends que ce qu&rsquo;il y a apr\u00e8s l&rsquo;apostrophe (lignes 6 \u00e0 8). La m\u00e9thode <em><a rel=\"noreferrer noopener\" href=\"https:\/\/docs.python.org\/fr\/3\/library\/string.html\" target=\"_blank\">index<\/a><\/em> permet d&rsquo;avoir la position de la cha\u00eene pass\u00e9e en argument. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Si apr\u00e8s \u00e7a le mot n&rsquo;est pas vide, je l&rsquo;ajoute au dictionnaire (s&rsquo;il n&rsquo;y est pas d\u00e9j\u00e0) en lui attribuant une valeur de 1, sinon j&rsquo;incr\u00e9mente sa valeur de 1 (lignes 9 \u00e0 14).<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Suppression des cl\u00e9s \u00e0 valeurs \u00e9gales \u00e0 1<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Les mots qui n&rsquo;apparaissent qu&rsquo;une seul fois ne m&rsquo;int\u00e9resse pas. Je vais donc cr\u00e9er une fonction qui les supprime:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"dracula\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">def suppr_key(dico , n = 1):\n    new_dico = dict(dico)\n    for key,value in dico.items():\n        if value &lt;= n:\n            del new_dico[key]\n    return new_dico<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Notez que j&rsquo;ai cr\u00e9\u00e9 une fonction admettant en arguments un dictionnaire et un nombre qui, par d\u00e9faut, est \u00e9gal \u00e0 deux, mais qui peut varier selon nos besoins.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">La ligne 2 copie le dictionnaire duquel je souhaite \u00f4ter des entr\u00e9es. Je ne peux pas agir directement sur le dictionnaire original car je boucle dessus.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Cr\u00e9ation d&rsquo;un histogramme \u00e0 partir du dictionnaire Python<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Pour cela, je vais avoir besoin de <em><a rel=\"noreferrer noopener\" href=\"https:\/\/matplotlib.org\/3.2.1\/api\/_as_gen\/matplotlib.pyplot.html\" target=\"_blank\">matplotlib.pyplot<\/a><\/em> et de ses fonctions <em>bar<\/em>, <em>show<\/em> et <em>xticks<\/em>.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"dracula\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"false\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">from matplotlib.pyplot import bar,show,xticks\ndef create_histo(dico):\n    xticks(rotation = 'vertical')\n    bar(list(dico.keys()), dico.values(), color='g')\n    show()<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Le programme complet<\/h2>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"python\" data-enlighter-theme=\"dracula\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">from matplotlib.pyplot import bar,show,xticks\n\nlist_of_ponct = [ '.' , ';' , '!' , '?' , ',' , ':' , '\\n' ]\n\ndef del_ponct(mot):\n    for letter in mot:\n        if letter in list_of_ponct:\n            mot = mot.replace(letter,'')\n            \n    return mot\n\ndef create_dico(file):\n    mots = dict()\n    with open(file , encoding = 'utf8') as f:\n        for line in f:\n            words_in_line = line.split(' ')\n                    \n            for word in words_in_line:\n                word = del_ponct( word )\n                if \"'\" in word:\n                    i = word.index(\"'\")\n                    word = word[i+1:]\n                if word != '':\n                    if word in mots:\n                        counter = mots[word] + 1\n                        mots[word] = counter\n                    else:\n                        mots[word] = 1\n    return mots\n\ndef suppr_key(dico , n = 1):\n    new_dico = dict(dico)\n    for key,value in dico.items():\n        if value &lt;= n:\n            del new_dico[key]\n    return new_dico\n\ndef create_histo(dico):\n    xticks(rotation = 'vertical')\n    bar(list(dico.keys()), dico.values(), color='g')\n    show()\n    \nmots = suppr_key(create_dico('poeme.txt'))\ncreate_histo(mots)<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">J&rsquo;ai ici d\u00e9compos\u00e9 en plusieurs fonctions afin de rendre le code plus clair.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Cela affiche:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"550\" height=\"437\" src=\"https:\/\/www.mathweb.fr\/euclide\/wp-content\/uploads\/2020\/06\/histogramme-python.png\" alt=\"dictionnaire python\" class=\"wp-image-2721\" srcset=\"https:\/\/www.mathweb.fr\/euclide\/wp-content\/uploads\/2020\/06\/histogramme-python.png 550w, https:\/\/www.mathweb.fr\/euclide\/wp-content\/uploads\/2020\/06\/histogramme-python-300x238.png 300w\" sizes=\"auto, (max-width: 550px) 100vw, 550px\" \/><figcaption>Histogramme cr\u00e9\u00e9 avec Python \u00e0 partir d&rsquo;un fichier texte<\/figcaption><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">De cette analyse, on constate que le mot \u00ab\u00a0c\u0153ur\u00a0\u00bb appara\u00eet 5 fois, ce qui laisse \u00e0 penser que l&rsquo;auteur souhaite v\u00e9hiculer une id\u00e9e sur le c\u0153ur \u00e0 travers ce po\u00e8me. Et si on exclut les mots sans int\u00e9r\u00eat (\u00ab\u00a0la\u00a0\u00bb, \u00ab\u00a0et\u00a0\u00bb, \u00ab\u00a0qui\u00a0\u00bb, &#8230;) on s&rsquo;aper\u00e7oit que \u00ab\u00a0peine\u00a0\u00bb, \u00ab\u00a0pleure\u00a0\u00bb et \u00ab\u00a0pluie\u00a0\u00bb reviennent deux fois. Ce po\u00e8me parle donc d&rsquo;une peine de c\u0153ur.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">En effet, Verlaine a \u00e9crit ce po\u00e8me sous les toits de Paris, un soir de pluie, apr\u00e8s sa douloureuse rupture avec Arthur Rimbaud (me semble-t-il&#8230; mais si je me trompe, dites-le moi !).<\/p>\n","protected":false},"excerpt":{"rendered":"<p>C&rsquo;est quoi un dictionnaire en Python ? Il y a plusieurs types de variables, dont les dictionnaires. Nous n&rsquo;allons pas voir tout ce qu&rsquo;il est possible de faire avec un dictionnaire, mais nous allons, \u00e0 travers un exemple concret, voir comment manipuler un tel type de variables. Introduction au dictionnaire [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-2719","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Le dictionnaire en Python - Mathweb.fr - Compter les mots d&#039;un fichier<\/title>\n<meta name=\"description\" content=\"Sur cette page, nous allons voir la notion de dictionnaire en Python \u00e0 travers un exemple : compter les mots dans un fichier texte et cr\u00e9er un graphique.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.mathweb.fr\/euclide\/dictionnaire-python\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Le dictionnaire en Python - Mathweb.fr - Compter les mots d&#039;un fichier\" \/>\n<meta property=\"og:description\" content=\"Sur cette page, nous allons voir la notion de dictionnaire en Python \u00e0 travers un exemple : compter les mots dans un fichier texte et cr\u00e9er un graphique.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.mathweb.fr\/euclide\/dictionnaire-python\/\" \/>\n<meta property=\"og:site_name\" content=\"Mathweb.fr\" \/>\n<meta property=\"article:modified_time\" content=\"2023-04-16T14:19:25+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.mathweb.fr\/euclide\/wp-content\/uploads\/2020\/06\/histogramme-python.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data1\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.mathweb.fr\\\/euclide\\\/dictionnaire-python\\\/\",\"url\":\"https:\\\/\\\/www.mathweb.fr\\\/euclide\\\/dictionnaire-python\\\/\",\"name\":\"Le dictionnaire en Python - Mathweb.fr - Compter les mots d'un fichier\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.mathweb.fr\\\/euclide\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.mathweb.fr\\\/euclide\\\/dictionnaire-python\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.mathweb.fr\\\/euclide\\\/dictionnaire-python\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.mathweb.fr\\\/euclide\\\/wp-content\\\/uploads\\\/2020\\\/06\\\/histogramme-python.png\",\"datePublished\":\"2020-06-16T13:26:50+00:00\",\"dateModified\":\"2023-04-16T14:19:25+00:00\",\"description\":\"Sur cette page, nous allons voir la notion de dictionnaire en Python \u00e0 travers un exemple : compter les mots dans un fichier texte et cr\u00e9er un graphique.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.mathweb.fr\\\/euclide\\\/dictionnaire-python\\\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.mathweb.fr\\\/euclide\\\/dictionnaire-python\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\\\/\\\/www.mathweb.fr\\\/euclide\\\/dictionnaire-python\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.mathweb.fr\\\/euclide\\\/wp-content\\\/uploads\\\/2020\\\/06\\\/histogramme-python.png\",\"contentUrl\":\"https:\\\/\\\/www.mathweb.fr\\\/euclide\\\/wp-content\\\/uploads\\\/2020\\\/06\\\/histogramme-python.png\",\"width\":550,\"height\":437},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.mathweb.fr\\\/euclide\\\/dictionnaire-python\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\\\/\\\/www.mathweb.fr\\\/euclide\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Le dictionnaire en Python\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.mathweb.fr\\\/euclide\\\/#website\",\"url\":\"https:\\\/\\\/www.mathweb.fr\\\/euclide\\\/\",\"name\":\"Mathweb.fr\",\"description\":\"Math\u00e9matiques, LaTeX et Python\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.mathweb.fr\\\/euclide\\\/#\\\/schema\\\/person\\\/e4d3bb07968238378f0d5052a70dcd69\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.mathweb.fr\\\/euclide\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.mathweb.fr\\\/euclide\\\/#\\\/schema\\\/person\\\/e4d3bb07968238378f0d5052a70dcd69\",\"name\":\"St\u00e9phane Pasquet\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\\\/\\\/www.mathweb.fr\\\/euclide\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/cropped-logo-mathweb.webp\",\"url\":\"https:\\\/\\\/www.mathweb.fr\\\/euclide\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/cropped-logo-mathweb.webp\",\"contentUrl\":\"https:\\\/\\\/www.mathweb.fr\\\/euclide\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/cropped-logo-mathweb.webp\",\"width\":74,\"height\":77,\"caption\":\"St\u00e9phane Pasquet\"},\"logo\":{\"@id\":\"https:\\\/\\\/www.mathweb.fr\\\/euclide\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/cropped-logo-mathweb.webp\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Le dictionnaire en Python - Mathweb.fr - Compter les mots d'un fichier","description":"Sur cette page, nous allons voir la notion de dictionnaire en Python \u00e0 travers un exemple : compter les mots dans un fichier texte et cr\u00e9er un graphique.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.mathweb.fr\/euclide\/dictionnaire-python\/","og_locale":"fr_FR","og_type":"article","og_title":"Le dictionnaire en Python - Mathweb.fr - Compter les mots d'un fichier","og_description":"Sur cette page, nous allons voir la notion de dictionnaire en Python \u00e0 travers un exemple : compter les mots dans un fichier texte et cr\u00e9er un graphique.","og_url":"https:\/\/www.mathweb.fr\/euclide\/dictionnaire-python\/","og_site_name":"Mathweb.fr","article_modified_time":"2023-04-16T14:19:25+00:00","og_image":[{"url":"https:\/\/www.mathweb.fr\/euclide\/wp-content\/uploads\/2020\/06\/histogramme-python.png","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Dur\u00e9e de lecture estim\u00e9e":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.mathweb.fr\/euclide\/dictionnaire-python\/","url":"https:\/\/www.mathweb.fr\/euclide\/dictionnaire-python\/","name":"Le dictionnaire en Python - Mathweb.fr - Compter les mots d'un fichier","isPartOf":{"@id":"https:\/\/www.mathweb.fr\/euclide\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.mathweb.fr\/euclide\/dictionnaire-python\/#primaryimage"},"image":{"@id":"https:\/\/www.mathweb.fr\/euclide\/dictionnaire-python\/#primaryimage"},"thumbnailUrl":"https:\/\/www.mathweb.fr\/euclide\/wp-content\/uploads\/2020\/06\/histogramme-python.png","datePublished":"2020-06-16T13:26:50+00:00","dateModified":"2023-04-16T14:19:25+00:00","description":"Sur cette page, nous allons voir la notion de dictionnaire en Python \u00e0 travers un exemple : compter les mots dans un fichier texte et cr\u00e9er un graphique.","breadcrumb":{"@id":"https:\/\/www.mathweb.fr\/euclide\/dictionnaire-python\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.mathweb.fr\/euclide\/dictionnaire-python\/"]}]},{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/www.mathweb.fr\/euclide\/dictionnaire-python\/#primaryimage","url":"https:\/\/www.mathweb.fr\/euclide\/wp-content\/uploads\/2020\/06\/histogramme-python.png","contentUrl":"https:\/\/www.mathweb.fr\/euclide\/wp-content\/uploads\/2020\/06\/histogramme-python.png","width":550,"height":437},{"@type":"BreadcrumbList","@id":"https:\/\/www.mathweb.fr\/euclide\/dictionnaire-python\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.mathweb.fr\/euclide\/"},{"@type":"ListItem","position":2,"name":"Le dictionnaire en Python"}]},{"@type":"WebSite","@id":"https:\/\/www.mathweb.fr\/euclide\/#website","url":"https:\/\/www.mathweb.fr\/euclide\/","name":"Mathweb.fr","description":"Math\u00e9matiques, LaTeX et Python","publisher":{"@id":"https:\/\/www.mathweb.fr\/euclide\/#\/schema\/person\/e4d3bb07968238378f0d5052a70dcd69"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.mathweb.fr\/euclide\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":["Person","Organization"],"@id":"https:\/\/www.mathweb.fr\/euclide\/#\/schema\/person\/e4d3bb07968238378f0d5052a70dcd69","name":"St\u00e9phane Pasquet","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/www.mathweb.fr\/euclide\/wp-content\/uploads\/2025\/06\/cropped-logo-mathweb.webp","url":"https:\/\/www.mathweb.fr\/euclide\/wp-content\/uploads\/2025\/06\/cropped-logo-mathweb.webp","contentUrl":"https:\/\/www.mathweb.fr\/euclide\/wp-content\/uploads\/2025\/06\/cropped-logo-mathweb.webp","width":74,"height":77,"caption":"St\u00e9phane Pasquet"},"logo":{"@id":"https:\/\/www.mathweb.fr\/euclide\/wp-content\/uploads\/2025\/06\/cropped-logo-mathweb.webp"}}]}},"_links":{"self":[{"href":"https:\/\/www.mathweb.fr\/euclide\/wp-json\/wp\/v2\/pages\/2719","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.mathweb.fr\/euclide\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.mathweb.fr\/euclide\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.mathweb.fr\/euclide\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.mathweb.fr\/euclide\/wp-json\/wp\/v2\/comments?post=2719"}],"version-history":[{"count":0,"href":"https:\/\/www.mathweb.fr\/euclide\/wp-json\/wp\/v2\/pages\/2719\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.mathweb.fr\/euclide\/wp-json\/wp\/v2\/media?parent=2719"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}