/
fedorhub
/
Python_Le
Обзор
Документация
Войти
/
fedorhub
/
Python_Le
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
python/dict-08/index.htm
4 201 строка
436 KB
fedorhub
upload files
17 дек 2025, 14:35
17 дек 2025, 14:35
50de53d
Код
Авторство
О чём код?
<!DOCTYPE html> <html class="no-js" lang="ru-RU"> <head> <meta http-equiv="content-type" content="text/html" charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" > <link rel="profile" href="http://gmpg.org/xfn/11"> <meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' /> <script> MathJax = { tex: { inlineMath: [['$','$'],['\\(','\\)']], processEscapes: true }, options: { ignoreHtmlClass: 'tex2jax_ignore|editor-rich-text' } }; </script> <!-- This site is optimized with the Yoast SEO plugin v23.8 - https://yoast.com/wordpress/plugins/seo/ --> <title>Словарь | Программирование на Питоне</title> <meta name="description" content="Словари в Питоне хранят информацию в формате "ключ : значение" и позволяют быстро находить необходимую информацию." /> <link rel="canonical" href="https://www.dmitrymakarov.ru/python/dict-08/" /> <meta property="og:locale" content="ru_RU" /> <meta property="og:type" content="article" /> <meta property="og:title" content="Словарь | Программирование на Питоне" /> <meta property="og:description" content="Словари в Питоне хранят информацию в формате "ключ : значение" и позволяют быстро находить необходимую информацию." /> <meta property="og:url" content="https://www.dmitrymakarov.ru/python/dict-08/" /> <meta property="og:site_name" content="Машинное обучение" /> <meta property="article:modified_time" content="2024-10-12T18:20:47+00:00" /> <meta property="og:image" content="https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/dict-str.jpg" /> <meta property="og:image:width" content="2335" /> <meta property="og:image:height" content="942" /> <meta property="og:image:type" content="image/jpeg" /> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:label1" content="Примерное время для чтения" /> <meta name="twitter:data1" content="20 минут" /> <script type="application/ld+json" class="yoast-schema-graph">{"@context":"https://schema.org","@graph":[{"@type":"WebPage","@id":"https://www.dmitrymakarov.ru/python/dict-08/","url":"https://www.dmitrymakarov.ru/python/dict-08/","name":"Словарь | Программирование на Питоне","isPartOf":{"@id":"https://www.dmitrymakarov.ru/#website"},"primaryImageOfPage":{"@id":"https://www.dmitrymakarov.ru/python/dict-08/#primaryimage"},"image":{"@id":"https://www.dmitrymakarov.ru/python/dict-08/#primaryimage"},"thumbnailUrl":"https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/dict-str-1024x413.jpg","datePublished":"2021-11-29T08:23:30+00:00","dateModified":"2024-10-12T18:20:47+00:00","description":"Словари в Питоне хранят информацию в формате \"ключ : значение\" и позволяют быстро находить необходимую информацию.","breadcrumb":{"@id":"https://www.dmitrymakarov.ru/python/dict-08/#breadcrumb"},"inLanguage":"ru-RU","potentialAction":[{"@type":"ReadAction","target":["https://www.dmitrymakarov.ru/python/dict-08/"]}]},{"@type":"ImageObject","inLanguage":"ru-RU","@id":"https://www.dmitrymakarov.ru/python/dict-08/#primaryimage","url":"https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/dict-str.jpg","contentUrl":"https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/dict-str.jpg","width":2335,"height":942},{"@type":"BreadcrumbList","@id":"https://www.dmitrymakarov.ru/python/dict-08/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Главная страница","item":"https://www.dmitrymakarov.ru/"},{"@type":"ListItem","position":2,"name":"Программирование на Питоне","item":"https://www.dmitrymakarov.ru/python/"},{"@type":"ListItem","position":3,"name":"Словарь"}]},{"@type":"WebSite","@id":"https://www.dmitrymakarov.ru/#website","url":"https://www.dmitrymakarov.ru/","name":"Машинное обучение","description":"","publisher":{"@id":"https://www.dmitrymakarov.ru/#/schema/person/3fc221e2d391cc5cfd9d31c9c251c2a4"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://www.dmitrymakarov.ru/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ru-RU"},{"@type":["Person","Organization"],"@id":"https://www.dmitrymakarov.ru/#/schema/person/3fc221e2d391cc5cfd9d31c9c251c2a4","name":"DmitryMakarov","image":{"@type":"ImageObject","inLanguage":"ru-RU","@id":"https://www.dmitrymakarov.ru/#/schema/person/image/","url":"https://secure.gravatar.com/avatar/2c5f922d990c667feffc00f99517cc0e?s=96&d=mm&r=g","contentUrl":"https://secure.gravatar.com/avatar/2c5f922d990c667feffc00f99517cc0e?s=96&d=mm&r=g","caption":"DmitryMakarov"},"logo":{"@id":"https://www.dmitrymakarov.ru/#/schema/person/image/"}}]}</script> <!-- / Yoast SEO plugin. --> <link rel='dns-prefetch' href='//cdn.jsdelivr.net' /> <link rel="alternate" type="application/rss+xml" title="Машинное обучение » Лента" href="https://www.dmitrymakarov.ru/feed/" /> <link rel="alternate" type="application/rss+xml" title="Машинное обучение » Лента комментариев" href="https://www.dmitrymakarov.ru/comments/feed/" /> <script type="text/javascript"> /* <![CDATA[ */ window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/15.0.3\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/15.0.3\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/www.dmitrymakarov.ru\/wp-includes\/js\/wp-emoji-release.min.js?ver=6.6.2"}}; /*! This file is auto-generated */ !function(i,n){var o,s,e;function c(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function p(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data),r=(e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0),new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data));return t.every(function(e,t){return e===r[t]})}function u(e,t,n){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\uddfa\ud83c\uddf3","\ud83c\uddfa\u200b\ud83c\uddf3")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!n(e,"\ud83d\udc26\u200d\u2b1b","\ud83d\udc26\u200b\u2b1b")}return!1}function f(e,t,n){var r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):i.createElement("canvas"),a=r.getContext("2d",{willReadFrequently:!0}),o=(a.textBaseline="top",a.font="600 32px Arial",{});return e.forEach(function(e){o[e]=t(a,e,n)}),o}function t(e){var t=i.createElement("script");t.src=e,t.defer=!0,i.head.appendChild(t)}"undefined"!=typeof Promise&&(o="wpEmojiSettingsSupports",s=["flag","emoji"],n.supports={everything:!0,everythingExceptFlag:!0},e=new Promise(function(e){i.addEventListener("DOMContentLoaded",e,{once:!0})}),new Promise(function(t){var n=function(){try{var e=JSON.parse(sessionStorage.getItem(o));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(s),u.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"}),a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=function(e){c(n=e.data),a.terminate(),t(n)})}catch(e){}c(n=f(s,u,p))}t(n)}).then(function(e){for(var t in e)n.supports[t]=e[t],n.supports.everything=n.supports.everything&&n.supports[t],"flag"!==t&&(n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&n.supports[t]);n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&!n.supports.flag,n.DOMReady=!1,n.readyCallback=function(){n.DOMReady=!0}}).then(function(){return e}).then(function(){var e;n.supports.everything||(n.readyCallback(),(e=n.source||{}).concatemoji?t(e.concatemoji):e.wpemoji&&e.twemoji&&(t(e.twemoji),t(e.wpemoji)))}))}((window,document),window._wpemojiSettings); /* ]]> */ </script> <link rel='stylesheet' id='mci-footnotes-no-tooltips-pagelayout-none-css' href='https://www.dmitrymakarov.ru/wp-content/plugins/footnotes/css/footnotes-nottbrpl0.min.css?ver=2.7.3' type='text/css' media='all' /> <link rel='stylesheet' id='urvanov_syntax_highlighter-css' href='https://www.dmitrymakarov.ru/wp-content/plugins/urvanov-syntax-highlighter/css/min/urvanov_syntax_highlighter.min.css?ver=2.8.37' type='text/css' media='all' /> <link rel='stylesheet' id='crayon-theme-familiar-my-copy-css' href='https://www.dmitrymakarov.ru/wp-content/uploads/urvanov-syntax-highlighter/themes/familiar-my-copy/familiar-my-copy.css?ver=2.8.37' type='text/css' media='all' /> <link rel='stylesheet' id='crayon-font-consolas-css' href='https://www.dmitrymakarov.ru/wp-content/plugins/urvanov-syntax-highlighter/fonts/consolas.css?ver=2.8.37' type='text/css' media='all' /> <style id='wp-emoji-styles-inline-css' type='text/css'> img.wp-smiley, img.emoji { display: inline !important; border: none !important; box-shadow: none !important; height: 1em !important; width: 1em !important; margin: 0 0.07em !important; vertical-align: -0.1em !important; background: none !important; padding: 0 !important; } </style> <link rel='stylesheet' id='wp-block-library-css' href='https://www.dmitrymakarov.ru/wp-includes/css/dist/block-library/style.min.css?ver=6.6.2' type='text/css' media='all' /> <link rel='stylesheet' id='ultimate_blocks-cgb-style-css-css' href='https://www.dmitrymakarov.ru/wp-content/plugins/ultimate-blocks/dist/blocks.style.build.css?ver=672da5131d46d' type='text/css' media='all' /> <style id='classic-theme-styles-inline-css' type='text/css'> /*! This file is auto-generated */ .wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none} </style> <style id='global-styles-inline-css' type='text/css'> :root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #121212;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #fff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--dark-gray: #333;--wp--preset--color--medium-gray: #555;--wp--preset--color--light-gray: #777;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 16px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 24px;--wp--preset--font-size--x-large: 42px;--wp--preset--font-size--normal: 18px;--wp--preset--font-size--larger: 28px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} :where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;} :where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;} :root :where(.wp-block-pullquote){font-size: 1.5em;line-height: 1.6;} </style> <link rel='stylesheet' id='ub-extension-style-css-css' href='https://www.dmitrymakarov.ru/wp-content/plugins/ultimate-blocks/src/extensions/style.css?ver=6.6.2' type='text/css' media='all' /> <link rel='stylesheet' id='mcluhan-fonts-css' href='https://www.dmitrymakarov.ru/wp-content/themes/mcluhan/assets/css/fonts.css?ver=6.6.2' type='text/css' media='all' /> <link rel='stylesheet' id='fontawesome-css' href='https://www.dmitrymakarov.ru/wp-content/themes/mcluhan/assets/css/font-awesome.css?ver=6.6.2' type='text/css' media='all' /> <link rel='stylesheet' id='mcluhan-style-css' href='https://www.dmitrymakarov.ru/wp-content/themes/mcluhan/style.css?ver=2.1.1' type='text/css' media='all' /> <script type="text/javascript" src="https://www.dmitrymakarov.ru/wp-includes/js/jquery/jquery.min.js?ver=3.7.1" id="jquery-core-js"></script> <script type="text/javascript" src="https://www.dmitrymakarov.ru/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1" id="jquery-migrate-js"></script> <script type="text/javascript" id="urvanov_syntax_highlighter_js-js-extra"> /* <![CDATA[ */ var UrvanovSyntaxHighlighterSyntaxSettings = {"version":"2.8.37","is_admin":"0","ajaxurl":"https:\/\/www.dmitrymakarov.ru\/wp-admin\/admin-ajax.php","prefix":"urvanov-syntax-highlighter-","setting":"urvanov-syntax-highlighter-setting","selected":"urvanov-syntax-highlighter-setting-selected","changed":"urvanov-syntax-highlighter-setting-changed","special":"urvanov-syntax-highlighter-setting-special","orig_value":"data-orig-value","debug":""}; var UrvanovSyntaxHighlighterSyntaxStrings = {"copy":"Copied to the clipboard","minimize":"Click To Expand Code"}; /* ]]> */ </script> <script type="text/javascript" src="https://www.dmitrymakarov.ru/wp-content/plugins/urvanov-syntax-highlighter/js/min/urvanov_syntax_highlighter.min.js?ver=2.8.37" id="urvanov_syntax_highlighter_js-js"></script> <style>#ub_table-of-contents-30e7cfcb-853f-4c59-8aa0-5a8073edba1a{ }#ub_table-of-contents-30e7cfcb-853f-4c59-8aa0-5a8073edba1a .ub_table-of-contents-header{ text-align: left; } #ub-content-toggle-197b8316-243e-4f24-9adf-2af4b8a1097d{ }#ub-content-toggle-197b8316-243e-4f24-9adf-2af4b8a1097d .wp-block-ub-content-toggle-accordion{ border-color: #f1f1f1; } #ub-content-toggle-197b8316-243e-4f24-9adf-2af4b8a1097d .wp-block-ub-content-toggle-accordion-title-wrap{ background-color: #f1f1f1; } #ub-content-toggle-197b8316-243e-4f24-9adf-2af4b8a1097d .wp-block-ub-content-toggle-accordion-title{ color: #000000; } #ub-content-toggle-197b8316-243e-4f24-9adf-2af4b8a1097d .wp-block-ub-content-toggle-accordion-toggle-wrap{ color: #000000; } .ub-content-toggle-title-95c5b613-064f-4f37-9f74-dac4f4e31f7b > a{ color: inherit; }#ub-content-toggle-0ddb0702-ea4d-4b38-b296-dfcc55f6bcb5{ }#ub-content-toggle-0ddb0702-ea4d-4b38-b296-dfcc55f6bcb5 .wp-block-ub-content-toggle-accordion{ border-color: #f1f1f1; } #ub-content-toggle-0ddb0702-ea4d-4b38-b296-dfcc55f6bcb5 .wp-block-ub-content-toggle-accordion-title-wrap{ background-color: #f1f1f1; } #ub-content-toggle-0ddb0702-ea4d-4b38-b296-dfcc55f6bcb5 .wp-block-ub-content-toggle-accordion-title{ color: #000000; } #ub-content-toggle-0ddb0702-ea4d-4b38-b296-dfcc55f6bcb5 .wp-block-ub-content-toggle-accordion-toggle-wrap{ color: #000000; } .ub-content-toggle-title-c948c189-0acc-44e4-b725-272afa665fad > a{ color: inherit; }#ub-content-toggle-9623b22c-0549-477e-a614-ff97f6ac3770{ }#ub-content-toggle-9623b22c-0549-477e-a614-ff97f6ac3770 .wp-block-ub-content-toggle-accordion{ border-color: #f1f1f1; } #ub-content-toggle-9623b22c-0549-477e-a614-ff97f6ac3770 .wp-block-ub-content-toggle-accordion-title-wrap{ background-color: #f1f1f1; } #ub-content-toggle-9623b22c-0549-477e-a614-ff97f6ac3770 .wp-block-ub-content-toggle-accordion-title{ color: #000000; } #ub-content-toggle-9623b22c-0549-477e-a614-ff97f6ac3770 .wp-block-ub-content-toggle-accordion-toggle-wrap{ color: #000000; } .ub-content-toggle-title-de3aef64-a561-4e1d-bf42-a5bebb1c91f0 > a{ color: inherit; }#ub_divider_f073c425-6d82-4784-82e9-b647492fc654{ }#ub_divider_f073c425-6d82-4784-82e9-b647492fc654 .ub_divider{ border-top:2px solid #ccc; margin-top: 20px; margin-bottom: 20px; width: 60%; } #ub_divider_44f987f2-08af-4e26-9447-5cd65312d3b2{ }#ub_divider_44f987f2-08af-4e26-9447-5cd65312d3b2 .ub_divider{ border-top:1px solid #ccc; margin-top: 20px; margin-bottom: 20px; width: 60%; } </style> <!-- Customizer CSS --> <style type="text/css"> body .site-header { background-color:#004235; }.social-menu.desktop { background-color:#004235; }.social-menu a:hover { color:#004235; }.social-menu a.active { color:#004235; }.mobile-menu-wrapper { background-color:#004235; }.social-menu.mobile { background-color:#004235; }.mobile-search.active { background-color:#004235; } </style> <!-- /Customizer CSS --> <script>jQuery( 'html' ).removeClass( 'no-js' ).addClass( 'js' );</script> <style type="text/css">.broken_link, a.broken_link { text-decoration: line-through; }</style><style type="text/css" id="custom-background-css"> body.custom-background { background-color: #fff9ef; } </style> <link rel="icon" href="https://www.dmitrymakarov.ru/wp-content/uploads/2021/08/cropped-wp-favicon-512-32x32.png" sizes="32x32" /> <link rel="icon" href="https://www.dmitrymakarov.ru/wp-content/uploads/2021/08/cropped-wp-favicon-512-192x192.png" sizes="192x192" /> <link rel="apple-touch-icon" href="https://www.dmitrymakarov.ru/wp-content/uploads/2021/08/cropped-wp-favicon-512-180x180.png" /> <meta name="msapplication-TileImage" content="https://www.dmitrymakarov.ru/wp-content/uploads/2021/08/cropped-wp-favicon-512-270x270.png" /> <style type="text/css" media="all"> .footnotes_reference_container {margin-top: 24px !important; margin-bottom: 0px !important;} .footnote_container_prepare > p {border-bottom: 1px solid #aaaaaa !important;} </style> </head> <body class="page-template page-template-full-width-page-template page-template-full-width-page-template-php page page-id-6985 page-child parent-pageid-1374 custom-background full-width-template"> <a class="skip-link button" href="#site-content">Перейти к содержимому</a> <header class="site-header group"> <p class="site-title"><a href="https://www.dmitrymakarov.ru" class="site-name">Машинное обучение</a></p> <div class="nav-toggle"> <div class="bar"></div> <div class="bar"></div> </div> <div class="menu-wrapper"> <ul class="main-menu desktop"> </ul> </div><!-- .menu-wrapper --> <div class="social-menu desktop"> <ul class="social-menu-inner"> <li class="social-search-wrapper"><a href="https://www.dmitrymakarov.ru/?s="></a></li> </ul><!-- .social-menu-inner --> </div><!-- .social-menu --> </header><!-- header --> <div class="mobile-menu-wrapper"> <ul class="main-menu mobile"> <li class="toggle-mobile-search-wrapper"><a href="#" class="toggle-mobile-search">Поиск</a></li> </ul><!-- .main-menu.mobile --> </div><!-- .mobile-menu-wrapper --> <div class="mobile-search"> <div class="untoggle-mobile-search"></div> <form role="search" method="get" class="search-form" action="https://www.dmitrymakarov.ru/"> <label class="screen-reader-text" for="search-form-672da51350b71">Поиск:</label> <input type="search" id="search-form-672da51350b71" class="search-field" placeholder="Введите запрос" value="" name="s" autocomplete="off" /> </button> </form> <div class="mobile-results"> <div class="results-wrapper"></div> </div> </div><!-- .mobile-search --> <div class="search-overlay"> <form role="search" method="get" class="search-form" action="https://www.dmitrymakarov.ru/"> <label class="screen-reader-text" for="search-form-672da51350bfb">Поиск:</label> <input type="search" id="search-form-672da51350bfb" class="search-field" placeholder="Введите запрос" value="" name="s" autocomplete="off" /> </button> </form> </div><!-- .search-overlay --> <main class="site-content" id="site-content"> <article class="post-6985 page type-page status-publish hentry missing-thumbnail"> <header class="entry-header section-inner"> <h1 class="entry-title">Словарь</h1> </header><!-- .entry-header --> <div class="entry-content section-inner"> <p class="has-light-gray-color has-text-color"><a href="https://www.dmitrymakarov.ru/">Все курсы</a> > <a href="https://www.dmitrymakarov.ru/python/">Программирование на Питоне</a> > Занятие 8</p> <p>Словари, наряду со <a href="https://www.dmitrymakarov.ru/python/list-tuple-set-07/">списками, кортежами и множествами</a>, также относятся к коллекциям (collections), т.е. типам данных, содержащим несколько элементов. Мы уже начали изучать словари на <a href="https://www.dmitrymakarov.ru/intro/lists-and-dictionaries-05/#dict">пятом занятии</a> вводного курса. Продолжим этот путь.</p> <div class="wp-block-ub-table-of-contents-block ub_table-of-contents" id="ub_table-of-contents-30e7cfcb-853f-4c59-8aa0-5a8073edba1a" data-linktodivider="false" data-showtext="show" data-hidetext="hide" data-scrolltype="auto" data-initiallyhideonmobile="false" data-initiallyshow="true"><div class="ub_table-of-contents-header-container"><div class="ub_table-of-contents-header"> <div class="ub_table-of-contents-title"><strong>Содержание занятия</strong></div></div></div><div class="ub_table-of-contents-extra-container"><div class="ub_table-of-contents-container ub_table-of-contents-1-column "><ul><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#0-ponyatie-slovarya-v-pitone>Понятие словаря в Питоне</a><ul><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#1-sozdanie-slovarya>Создание словаря</a></li><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#2-klyuchi-i-znacheniya-slovarya>Ключи и значения словаря</a><ul><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#3-metody-keys-values-i-items>Методы .keys(), .values() и .items()</a></li><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#4-ispolzovanie-tsikla-for>Использование цикла for</a></li><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#5-dostup-po-klyuchu-i-metod-get>Доступ по ключу и метод .get()</a></li><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#6-proverka-nalichiya-klyucha-i-znacheniya-v-slovare>Проверка наличия ключа и значения в словаре</a></li></ul></li></ul></li><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#7-operatsii-so-slovaryami>Операции со словарями</a><ul><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#8-dobavlenie-i-izmenenie-elementov>Добавление и изменение элементов</a></li><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#9-udalenie-elementov>Удаление элементов</a></li><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#10-sortirovka-slovarey>Сортировка словарей</a></li><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#11-kopirovanie-slovarey>Копирование словарей</a></li></ul></li><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#12-funktsiya-dir>Функция dir()</a></li><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#13-dict-comprehension>Dict comprehension</a></li><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#14-dopolnitelnye-primery>Дополнительные примеры</a><ul><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#15-lambda-funktsiya-funktsii-map-i-zip>lambda-функция, функции map() и zip()</a><ul><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#16-primer-so-spiskom>Пример со списком</a></li><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#17-primer-so-slovarem>Пример со словарем</a></li></ul></li><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#18-vlozhennye-slovari>Вложенные словари</a><ul><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#19-bazovye-operatsii>Базовые операции</a></li><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#20-tsikly-for>Циклы for</a></li><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#21-vlozhennye-slovari-i-dict-comprehension>Вложенные словари и dict comprehension</a></li></ul></li><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#22-chastota-slov-v-tekste>Частота слов в тексте</a><ul><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#23-predvaritelnaya-obrabotka-teksta>Предварительная обработка текста</a></li><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#24-sposob-1-uslovie-if-else>Способ 1. Условие if-else</a></li><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#25-sposob-2-metod-get>Способ 2. Метод .get()</a></li><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#26-sposob-3-klass-counter-modulya-collections>Способ 3. Класс Counter модуля collections</a></li></ul></li></ul></li><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#27-podvedem-itog>Подведем итог</a><ul><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#28-voprosy-dlya-zakrepleniya>Вопросы для закрепления</a></li><li><a href=https://www.dmitrymakarov.ru/python/dict-08/#29-otvety-na-voprosy>Ответы на вопросы</a></li></ul></li></ul></div></div></div> <p class="has-text-align-center has-white-color has-text-color has-background" style="background-color:#004235"><a href="https://colab.research.google.com/drive/14rR4Q-6zI5waxL75Kf-csUvz9vdSsy6v?usp=sharing" target="_blank" rel="noreferrer noopener">Откроем блокнот к этому занятию</a>⧉</p> <h2 class="wp-block-heading" id="0-ponyatie-slovarya-v-pitone">Понятие словаря в Питоне</h2> <p>Словарь — неупорядоченный набор элементов с доступом по ключу.</p> <div class="wp-block-image is-resized"> <figure class="aligncenter size-large"><img fetchpriority="high" decoding="async" width="1024" height="413" src="https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/dict-str-1024x413.jpg" alt="словарь в Питоне" class="wp-image-8260" style="width:533px;height:auto" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/dict-str-1024x413.jpg 1024w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/dict-str-300x121.jpg 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/dict-str-768x310.jpg 768w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/dict-str-1536x620.jpg 1536w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/dict-str-2048x826.jpg 2048w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/dict-str-1200x484.jpg 1200w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/dict-str-600x242.jpg 600w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure></div> <h3 class="wp-block-heading" id="1-sozdanie-slovarya">Создание словаря</h3> <p>Пустой словарь можно инициализировать через фигурные скобки <span id="urvanov-syntax-highlighter-672da51314b18454741238" class="urvanov-syntax-highlighter-syntax urvanov-syntax-highlighter-syntax-inline crayon-theme-familiar-my-copy crayon-theme-familiar-my-copy-inline urvanov-syntax-highlighter-font-consolas" style="font-size: 16px !important; line-height: 22px !important;font-size: 16px !important;"><span class="crayon-pre urvanov-syntax-highlighter-code" style="font-size: 16px !important; line-height: 22px !important;font-size: 16px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><span class="crayon-sy">{</span><span class="crayon-sy">}</span></span></span> или <strong>функцию dict()</strong>.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b25139862332" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b25139862332-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b25139862332-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b25139862332-1"><span class="crayon-v">dict_1</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">dict_2</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">{</span><span class="crayon-sy">}</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-k ">dict</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b25139862332-2"><span class="crayon-k ">print</span><span class="crayon-sy">(</span><span class="crayon-v">dict_1</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">dict_2</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b27288511040" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b27288511040-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b27288511040-1">{} {}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Словарь можно сразу заполнить ключами и значениями.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b2a640661526" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b2a640661526-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b2a640661526-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b2a640661526-1"><span class="crayon-v">company</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">{</span><span class="crayon-s">'name'</span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-s">'Toyota'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'founded'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">1937</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'founder'</span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-s">'Kiichiro Toyoda'</span><span class="crayon-sy">}</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b2a640661526-2"><span class="crayon-v">company</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b2c391249187" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b2c391249187-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b2c391249187-1">{'name': 'Toyota', 'founded': 1937, 'founder': 'Kiichiro Toyoda'}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Словарь можно также создать из вложенных списков.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b2d147048143" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b2d147048143-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b2d147048143-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b2d147048143-1"><span class="crayon-v">tickers</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-k ">dict</span><span class="crayon-sy">(</span><span class="crayon-sy">[</span><span class="crayon-sy">[</span><span class="crayon-s">'TYO'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'Toyota'</span><span class="crayon-sy">]</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-sy">[</span><span class="crayon-s">'TSLA'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'Tesla'</span><span class="crayon-sy">]</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-sy">[</span><span class="crayon-s">'F'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'Ford'</span><span class="crayon-sy">]</span><span class="crayon-sy">]</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b2d147048143-2"><span class="crayon-v">tickers</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b2f779432734" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b2f779432734-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b2f779432734-1">{'TYO': 'Toyota', 'TSLA': 'Tesla', 'F': 'Ford'}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Иногда бывает полезно создать словарь с заранее известными ключами и заданным значением. В этом нам поможет <strong>метод .fromkeys()</strong>.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b34275394693" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b34275394693-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b34275394693-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b34275394693-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b34275394693-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b34275394693-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b34275394693-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b34275394693-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b34275394693-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b34275394693-9">9</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b34275394693-1"><span class="crayon-c"># ключи мы поместим в кортеж</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b34275394693-2"><span class="crayon-v">keys</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-s">'k1'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'k2'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'k3'</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b34275394693-3"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b34275394693-4"><span class="crayon-c"># значением каждого ключа будет 0, </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b34275394693-5"><span class="crayon-c"># если ничего не указывать, ключи получат значение None</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b34275394693-6"><span class="crayon-v">value</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">0</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b34275394693-7"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b34275394693-8"><span class="crayon-v">empty_k</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-k ">dict</span><span class="crayon-sy">.</span><span class="crayon-e">fromkeys</span><span class="crayon-sy">(</span><span class="crayon-v">keys</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">value</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b34275394693-9"><span class="crayon-v">empty_k</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0003 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b3b668754396" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b3b668754396-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b3b668754396-1">{'k1': 0, 'k2': 0, 'k3': 0}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <h3 class="wp-block-heading" id="2-klyuchi-i-znacheniya-slovarya">Ключи и значения словаря</h3> <p>Ключами словаря могут быть только <strong>неизменяемые</strong> типы данных. Например, строки, числа, кортежи или логические значения (Boolean). Кроме того, ключи должны быть <strong>уникальными</strong> и соответственно не могут повторяться.</p> <p>Значения словаря, наоборот, могут состоять из чисел, строк, пропущенных (NaN) и логических значений, значения типа None, списков, массивов Numpy и вложенных словарей.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b42014933630" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b42014933630-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b42014933630-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b42014933630-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b42014933630-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b42014933630-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b42014933630-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b42014933630-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b42014933630-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b42014933630-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b42014933630-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b42014933630-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b42014933630-12">12</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b42014933630-1"><span class="crayon-r">import</span><span class="crayon-h"> </span><span class="crayon-e">numpy </span><span class="crayon-st">as</span><span class="crayon-h"> </span><span class="crayon-e">np</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b42014933630-2"> </div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b42014933630-3"><span class="crayon-v">value_types</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">{</span><span class="crayon-s">'k1'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">123</span><span class="crayon-sy">,</span><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b42014933630-4"><span class="crayon-h"> </span><span class="crayon-s">'k2'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-s">'string'</span><span class="crayon-sy">,</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b42014933630-5"><span class="crayon-h"> </span><span class="crayon-s">'k3'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-v">NaN</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-c"># тип "Пропущенное значение"</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b42014933630-6"><span class="crayon-h"> </span><span class="crayon-s">'k4'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-t">True</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-c"># логическое значение</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b42014933630-7"><span class="crayon-h"> </span><span class="crayon-s">'k5'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-t">None</span><span class="crayon-sy">,</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b42014933630-8"><span class="crayon-h"> </span><span class="crayon-s">'k6'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-sy">[</span><span class="crayon-cn">1</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">2</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-sy">]</span><span class="crayon-sy">,</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b42014933630-9"><span class="crayon-h"> </span><span class="crayon-s">'k7'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">array</span><span class="crayon-sy">(</span><span class="crayon-sy">[</span><span class="crayon-cn">1</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">2</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-sy">]</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b42014933630-10"><span class="crayon-h"> </span><span class="crayon-s">'k8'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-sy">{</span><span class="crayon-cn">1</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-s">'v1'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">2</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-s">'v2'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-s">'v3'</span><span class="crayon-sy">}</span><span class="crayon-sy">}</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b42014933630-11"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b42014933630-12"><span class="crayon-v">value_types</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0006 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b49259846416" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b49259846416-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b49259846416-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b49259846416-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b49259846416-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b49259846416-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b49259846416-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b49259846416-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b49259846416-8">8</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b49259846416-1">{'k1': 123,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b49259846416-2"> 'k2': 'string',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b49259846416-3"> 'k3': nan,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b49259846416-4"> 'k4': True,</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b49259846416-5"> 'k5': None,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b49259846416-6"> 'k6': [1, 2, 3],</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b49259846416-7"> 'k7': array([1, 2, 3]),</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b49259846416-8"> 'k8': {1: 'v1', 2: 'v2', 3: 'v3'}}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <h4 class="wp-block-heading" id="3-metody-keys-values-i-items">Методы .keys(), .values() и .items()</h4> <p>Создадим словарь с данными сотрудника.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b4e955462090" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b4e955462090-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b4e955462090-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b4e955462090-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b4e955462090-4">4</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b4e955462090-1"><span class="crayon-v">person</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">{</span><span class="crayon-s">'first name'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-s">'Иван'</span><span class="crayon-sy">,</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b4e955462090-2"><span class="crayon-h"> </span><span class="crayon-s">'last name'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-s">'Иванов'</span><span class="crayon-sy">,</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b4e955462090-3"><span class="crayon-h"> </span><span class="crayon-s">'born'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">1980</span><span class="crayon-sy">,</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b4e955462090-4"><span class="crayon-h"> </span><span class="crayon-s">'dept'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-s">'IT'</span><span class="crayon-sy">}</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <p>Как мы уже знаем, доступ к ключам и значениям можно получить через <strong>методы .keys()</strong> и <strong>.values()</strong> соответственно.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b50486514584" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b50486514584-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b50486514584-1"><span class="crayon-v">person</span><span class="crayon-sy">.</span><span class="crayon-e">keys</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b52179766768" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b52179766768-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b52179766768-1">dict_keys(['first name', 'last name', 'born', 'dept'])</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b53652046501" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b53652046501-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b53652046501-1"><span class="crayon-v">person</span><span class="crayon-sy">.</span><span class="crayon-e">values</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b55543091759" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b55543091759-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b55543091759-1">dict_values(['Иван', 'Иванов', 1980, 'IT'])</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p><strong>Метод .items()</strong> возвращает и то, и другое в формате списка из кортежей.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b57982476104" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b57982476104-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b57982476104-1"><span class="crayon-v">person</span><span class="crayon-sy">.</span><span class="crayon-e">items</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b59358126921" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b59358126921-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b59358126921-1">dict_items([('first name', 'Иван'), ('last name', 'Иванов'), ('born', 1980), ('dept', 'IT')])</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <h4 class="wp-block-heading" id="4-ispolzovanie-tsikla-for">Использование цикла for</h4> <p>Ключи и значения словаря удобно просматривать с помощью цикла <strong>for</strong> и <strong>метода .items()</strong>.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b5d709337559" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b5d709337559-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b5d709337559-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b5d709337559-1"><span class="crayon-st">for</span><span class="crayon-h"> </span><span class="crayon-v">k</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-i">v</span><span class="crayon-h"> </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-v">person</span><span class="crayon-sy">.</span><span class="crayon-e">items</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-o">:</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b5d709337559-2"><span class="crayon-h"> </span><span class="crayon-k ">print</span><span class="crayon-sy">(</span><span class="crayon-v">k</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">v</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b5e315260919" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b5e315260919-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b5e315260919-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b5e315260919-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b5e315260919-4">4</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b5e315260919-1">first name Иван</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b5e315260919-2">last name Иванов</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b5e315260919-3">born 1980</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b5e315260919-4">dept IT</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Как мы уже знаем, если записать результат метода <strong>.items()</strong> в одну переменную, будут выведены кортежи из ключа и значения.</p> <p>Использование в цикле <strong>for</strong> методов <strong>.keys()</strong> и <strong>.values()</strong> выводит только ключи или только значения соответственно.</p> <h4 class="wp-block-heading" id="5-dostup-po-klyuchu-i-metod-get">Доступ по ключу и метод .get()</h4> <p><strong>Конкретное значение</strong> в словаре можно получить, введя название словаря и затем название ключа в квадратных скобках.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b60285686935" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b60285686935-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b60285686935-1"><span class="crayon-v">person</span><span class="crayon-sy">[</span><span class="crayon-s">'last name'</span><span class="crayon-sy">]</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b62778817771" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b62778817771-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b62778817771-1">'Иванов'</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Если такого ключа нет, Питон выдаст ошибку.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b66104950523" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b66104950523-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b66104950523-1"><span class="crayon-v">person</span><span class="crayon-sy">[</span><span class="crayon-s">'education'</span><span class="crayon-sy">]</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <figure class="wp-block-image size-large is-resized"><img decoding="async" width="1024" height="311" src="https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/nokey-1024x311.jpg" alt="ошибка при вызове несуществующего словаря" class="wp-image-8500" style="width:701px;height:auto" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/nokey-1024x311.jpg 1024w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/nokey-300x91.jpg 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/nokey-768x233.jpg 768w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/nokey-1536x467.jpg 1536w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/nokey-1200x365.jpg 1200w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/nokey-600x182.jpg 600w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/nokey.jpg 1767w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure> <p>Для того чтобы этого не произошло, можно использовать <strong>метод .get()</strong>. Он также выводит значение по ключу.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b6d427566721" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b6d427566721-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b6d427566721-1"><span class="crayon-v">person</span><span class="crayon-sy">.</span><span class="crayon-e">get</span><span class="crayon-sy">(</span><span class="crayon-s">'born'</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b70692557908" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b70692557908-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b70692557908-1">1980</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Если ключа в словаре нет, метод <strong>.get()</strong> возвращает значение None.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b72872496267" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b72872496267-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b72872496267-1"><span class="crayon-k ">print</span><span class="crayon-sy">(</span><span class="crayon-v">person</span><span class="crayon-sy">.</span><span class="crayon-e">get</span><span class="crayon-sy">(</span><span class="crayon-s">'education'</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b74988730020" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b74988730020-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b74988730020-1">None</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <h4 class="wp-block-heading" id="6-proverka-nalichiya-klyucha-i-znacheniya-v-slovare">Проверка наличия ключа и значения в словаре</h4> <p>С помощью <strong>оператора in</strong> мы можем проверить наличие определенного <em>ключа</em> в словаре.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b75238501029" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b75238501029-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b75238501029-1"><span class="crayon-s">'born'</span><span class="crayon-h"> </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-v">person</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b7a585524125" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b7a585524125-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b7a585524125-1">True</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Важно сказать, что оператор <strong>in</strong> работает быстрее метода <strong>.get()</strong>.</p> <p><strong>Метод .values()</strong> поможет проверить наличие определенного <em>значения</em>.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b7c509403151" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b7c509403151-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b7c509403151-1"><span class="crayon-cn">1980</span><span class="crayon-h"> </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-v">person</span><span class="crayon-sy">.</span><span class="crayon-e">values</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b7e836814487" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b7e836814487-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b7e836814487-1">True</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p><strong>Метод .items()</strong> поможет проверить наличие пары ключ : значение. Обратите внимание, эту пару мы записываем в форме кортежа.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b80454974442" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b80454974442-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b80454974442-1"><span class="crayon-sy">(</span><span class="crayon-s">'born'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">1980</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-v">person</span><span class="crayon-sy">.</span><span class="crayon-e">items</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b82325423839" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b82325423839-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b82325423839-1">True</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <h2 class="wp-block-heading" id="7-operatsii-so-slovaryami">Операции со словарями</h2> <h3 class="wp-block-heading" id="8-dobavlenie-i-izmenenie-elementov">Добавление и изменение элементов</h3> <p>Добавить элемент можно, передав новому ключу новое значение.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b83441224479" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b83441224479-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b83441224479-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b83441224479-3">3</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b83441224479-1"><span class="crayon-c"># обратите внимание, в данном случае новое значение - это список</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b83441224479-2"><span class="crayon-v">person</span><span class="crayon-sy">[</span><span class="crayon-s">'languages'</span><span class="crayon-sy">]</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">[</span><span class="crayon-s">'Python'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'C++'</span><span class="crayon-sy">]</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b83441224479-3"><span class="crayon-v">person</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b85008468843" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b85008468843-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b85008468843-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b85008468843-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b85008468843-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b85008468843-5">5</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b85008468843-1">{'first name': 'Иван',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b85008468843-2"> 'last name': 'Иванов',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b85008468843-3"> 'born': 1980,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b85008468843-4"> 'dept': 'IT',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b85008468843-5"> 'languages': ['Python', 'C++']}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Изменить элемент можно передав существующему ключу новое значение.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b87998235928" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b87998235928-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b87998235928-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b87998235928-3">3</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b87998235928-1"><span class="crayon-c"># значение - это по-прежнему список, но из одного элемента</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b87998235928-2"><span class="crayon-v">person</span><span class="crayon-sy">[</span><span class="crayon-s">'languages'</span><span class="crayon-sy">]</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">[</span><span class="crayon-s">'Python'</span><span class="crayon-sy">]</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b87998235928-3"><span class="crayon-v">person</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b89900083957" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b89900083957-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b89900083957-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b89900083957-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b89900083957-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b89900083957-5">5</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b89900083957-1">{'first name': 'Иван',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b89900083957-2"> 'last name': 'Иванов',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b89900083957-3"> 'born': 1980,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b89900083957-4"> 'dept': 'IT',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b89900083957-5"> 'languages': ['Python']}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p><strong>Метод .update()</strong> позволяет соединить два словаря.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b8b234334382" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b8b234334382-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b8b234334382-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b8b234334382-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b8b234334382-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b8b234334382-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b8b234334382-6">6</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b8b234334382-1"><span class="crayon-c"># возьмем еще один словарь</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b8b234334382-2"><span class="crayon-v">new_elements</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">{</span><span class="crayon-s">'job'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-s">'программист'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'experience'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">7</span><span class="crayon-sy">}</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b8b234334382-3"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b8b234334382-4"><span class="crayon-c"># и присоединим его к существующему словарю с помощью метода .update()</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b8b234334382-5"><span class="crayon-v">person</span><span class="crayon-sy">.</span><span class="crayon-e">update</span><span class="crayon-sy">(</span><span class="crayon-v">new_elements</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b8b234334382-6"><span class="crayon-v">person</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b8d691949909" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b8d691949909-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b8d691949909-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b8d691949909-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b8d691949909-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b8d691949909-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b8d691949909-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b8d691949909-7">7</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b8d691949909-1">{'first name': 'Иван',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b8d691949909-2"> 'last name': 'Иванов',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b8d691949909-3"> 'born': 1980,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b8d691949909-4"> 'dept': 'IT',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b8d691949909-5"> 'languages': ['Python'],</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b8d691949909-6"> 'job': 'программист',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b8d691949909-7"> 'experience': 7}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p><strong>Метод .setdefault()</strong> не изменяет значение, если указанный ключ уже содержится в словаре.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b93736594148" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b93736594148-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b93736594148-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b93736594148-1"><span class="crayon-v">person</span><span class="crayon-sy">.</span><span class="crayon-e">setdefault</span><span class="crayon-sy">(</span><span class="crayon-s">'last name'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'Петров'</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b93736594148-2"><span class="crayon-v">person</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314b99239510355" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b99239510355-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b99239510355-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b99239510355-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b99239510355-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b99239510355-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314b99239510355-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314b99239510355-7">7</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b99239510355-1">{'first name': 'Иван',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b99239510355-2"> 'last name': 'Иванов',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b99239510355-3"> 'born': 1980,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b99239510355-4"> 'dept': 'IT',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b99239510355-5"> 'languages': ['Python'],</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314b99239510355-6"> 'job': 'программист',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314b99239510355-7"> 'experience': 7}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Если такого ключа нет, ключ и соответствующее значение будут добавлены в словарь.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314ba0027281435" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314ba0027281435-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314ba0027281435-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314ba0027281435-1"><span class="crayon-v">person</span><span class="crayon-sy">.</span><span class="crayon-e">setdefault</span><span class="crayon-sy">(</span><span class="crayon-s">'f_languages'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-sy">[</span><span class="crayon-s">'русский'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'английский'</span><span class="crayon-sy">]</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314ba0027281435-2"><span class="crayon-v">person</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314ba7935320655" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314ba7935320655-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314ba7935320655-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314ba7935320655-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314ba7935320655-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314ba7935320655-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314ba7935320655-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314ba7935320655-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314ba7935320655-8">8</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314ba7935320655-1">{'first name': 'Иван',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314ba7935320655-2"> 'last name': 'Иванов',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314ba7935320655-3"> 'born': 1980,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314ba7935320655-4"> 'dept': 'IT',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314ba7935320655-5"> 'languages': ['Python'],</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314ba7935320655-6"> 'job': 'программист',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314ba7935320655-7"> 'experience': 7,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314ba7935320655-8"> 'f_languages': ['русский', 'английский']}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <h3 class="wp-block-heading" id="9-udalenie-elementov">Удаление элементов</h3> <p><strong>Метод .pop()</strong> удаляет элемент по ключу и выводит удаляемое значение.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314baa011298760" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314baa011298760-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314baa011298760-1"><span class="crayon-v">person</span><span class="crayon-sy">.</span><span class="crayon-e">pop</span><span class="crayon-sy">(</span><span class="crayon-s">'dept'</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bac564109151" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bac564109151-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bac564109151-1">'IT'</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Убедимся, что этой пары ключа и значения больше нет в словаре.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bae800109020" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bae800109020-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bae800109020-1"><span class="crayon-v">person</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bb0216863285" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bb0216863285-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314bb0216863285-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bb0216863285-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314bb0216863285-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bb0216863285-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314bb0216863285-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bb0216863285-7">7</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bb0216863285-1">{'first name': 'Иван',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314bb0216863285-2"> 'last name': 'Иванов',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bb0216863285-3"> 'born': 1980,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314bb0216863285-4"> 'languages': ['Python'],</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bb0216863285-5"> 'job': 'программист',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314bb0216863285-6"> 'experience': 7,</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bb0216863285-7"> 'f_languages': ['русский', 'английский']}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p><strong>Ключевое слово del</strong> также удаляет элемент по ключу.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bb2018142182" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bb2018142182-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314bb2018142182-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bb2018142182-1"><span class="crayon-c"># удаляемое значение не выводится</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314bb2018142182-2"><span class="crayon-r">del</span><span class="crayon-sy">(</span><span class="crayon-v">person</span><span class="crayon-sy">[</span><span class="crayon-s">'born'</span><span class="crayon-sy">]</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <p><strong>Метод .popitem()</strong> удаляет и выводит последний добавленный в словарь элемент.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bb4872084519" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bb4872084519-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bb4872084519-1"><span class="crayon-v">person</span><span class="crayon-sy">.</span><span class="crayon-e">popitem</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bb6319992663" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bb6319992663-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bb6319992663-1">('f_languages', ['русский', 'английский'])</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p><strong>Метод .clear()</strong> удаляет все ключи и значения и возвращает пустой словарь.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bb8968361314" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bb8968361314-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314bb8968361314-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bb8968361314-1"><span class="crayon-v">person</span><span class="crayon-sy">.</span><span class="crayon-e">clear</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314bb8968361314-2"><span class="crayon-v">person</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bb9168177491" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bb9168177491-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bb9168177491-1">{}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Ключевое слово <strong>del</strong> также позволяет удалить словарь целиком.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bbb563410648" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bbb563410648-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314bbb563410648-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bbb563410648-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314bbb563410648-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bbb563410648-5">5</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bbb563410648-1"><span class="crayon-c"># удалим весь словарь</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314bbb563410648-2"><span class="crayon-r">del</span><span class="crayon-h"> </span><span class="crayon-i">person</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bbb563410648-3"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314bbb563410648-4"><span class="crayon-c"># если попытаться вновь вызвать эту переменную, Питон выдаст ошибку</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bbb563410648-5"><span class="crayon-v">person</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <figure class="wp-block-image size-large is-resized"><img decoding="async" width="1024" height="328" src="https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/nodict-1024x328.jpg" alt="ошибка при попытке вывести удаленный словарь" class="wp-image-8506" style="width:756px;height:auto" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/nodict-1024x328.jpg 1024w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/nodict-300x96.jpg 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/nodict-768x246.jpg 768w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/nodict-1536x492.jpg 1536w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/nodict-1200x384.jpg 1200w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/nodict-600x192.jpg 600w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/nodict.jpg 1814w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure> <h3 class="wp-block-heading" id="10-sortirovka-slovarey">Сортировка словарей</h3> <p>Для сортировки словарей можно использовать <strong>функцию sorted()</strong>.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bbd269797708" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bbd269797708-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314bbd269797708-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bbd269797708-1"><span class="crayon-c"># возьмем несложный словарь</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314bbd269797708-2"><span class="crayon-v">dict_to_sort</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">{</span><span class="crayon-s">'k2'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">30</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'k1'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">20</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'k3'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">10</span><span class="crayon-sy">}</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <p><em>Отсортируем ключи</em> этого словаря.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bbf258967161" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bbf258967161-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bbf258967161-1"><span class="crayon-k ">sorted</span><span class="crayon-sy">(</span><span class="crayon-v">dict_to_sort</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bc1653772662" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bc1653772662-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bc1653772662-1"><span class="crayon-sy">[</span><span class="crayon-s">'k1'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'k2'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'k3'</span><span class="crayon-sy">]</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <p>Теперь <em>отсортируем значения</em> с помощью метода <strong>.values()</strong>.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bc3066653424" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bc3066653424-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bc3066653424-1"><span class="crayon-k ">sorted</span><span class="crayon-sy">(</span><span class="crayon-v">dict_to_sort</span><span class="crayon-sy">.</span><span class="crayon-e">values</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bc5878388481" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bc5878388481-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bc5878388481-1">[10, 20, 30]</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Если мы хотим отсортировать пары «ключ : значение» по ключу или по значению, вначале воспользуемся методом <strong>.items()</strong> для извлечения этих пар (кортежей) из словаря.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bc7940428357" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bc7940428357-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bc7940428357-1"><span class="crayon-v">dict_to_sort</span><span class="crayon-sy">.</span><span class="crayon-e">items</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bc8820780315" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bc8820780315-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bc8820780315-1">dict_items([('k2', 30), ('k1', 20), ('k3', 10)])</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Затем мы укажем эти кортежи в качестве первого аргумента <strong>функции sorted()</strong>. Параметру key этой же функции мы передадим <a href="https://www.dmitrymakarov.ru/python/functions-06/#13-lambda-funktsiya-vnutri-funktsii-sorted">lambda-функцию</a>, которая вернет либо ключ <span id="urvanov-syntax-highlighter-672da51314bca616794418" class="urvanov-syntax-highlighter-syntax urvanov-syntax-highlighter-syntax-inline crayon-theme-familiar-my-copy crayon-theme-familiar-my-copy-inline urvanov-syntax-highlighter-font-consolas" style="font-size: 16px !important; line-height: 22px !important;font-size: 16px !important;"><span class="crayon-pre urvanov-syntax-highlighter-code" style="font-size: 16px !important; line-height: 22px !important;font-size: 16px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><span class="crayon-r">lambda</span> <span class="crayon-i">x</span> <span class="crayon-o">:</span> <span class="crayon-v">x</span><span class="crayon-sy">[</span><span class="crayon-cn">0</span><span class="crayon-sy">]</span></span></span> каждого кортежа, либо его значение <span id="urvanov-syntax-highlighter-672da51314bcc210722656" class="urvanov-syntax-highlighter-syntax urvanov-syntax-highlighter-syntax-inline crayon-theme-familiar-my-copy crayon-theme-familiar-my-copy-inline urvanov-syntax-highlighter-font-consolas" style="font-size: 16px !important; line-height: 22px !important;font-size: 16px !important;"><span class="crayon-pre urvanov-syntax-highlighter-code" style="font-size: 16px !important; line-height: 22px !important;font-size: 16px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><span class="crayon-r">lambda</span> <span class="crayon-i">x</span> <span class="crayon-o">:</span> <span class="crayon-v">x</span><span class="crayon-sy">[</span><span class="crayon-cn">1</span><span class="crayon-sy">]</span></span></span>. Именно по ним и будет произведена сортировка.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bce118378454" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bce118378454-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314bce118378454-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bce118378454-1"><span class="crayon-c"># посмотрим на сортировку по ключу</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314bce118378454-2"><span class="crayon-k ">sorted</span><span class="crayon-sy">(</span><span class="crayon-v">dict_to_sort</span><span class="crayon-sy">.</span><span class="crayon-e">items</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">key</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-r">lambda</span><span class="crayon-h"> </span><span class="crayon-v">x</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-v">x</span><span class="crayon-sy">[</span><span class="crayon-cn">0</span><span class="crayon-sy">]</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bd0597374261" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bd0597374261-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bd0597374261-1">[('k1', 20), ('k2', 30), ('k3', 10)]</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bd2470312490" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bd2470312490-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314bd2470312490-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bd2470312490-1"><span class="crayon-c"># а теперь по значению</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314bd2470312490-2"><span class="crayon-k ">sorted</span><span class="crayon-sy">(</span><span class="crayon-v">dict_to_sort</span><span class="crayon-sy">.</span><span class="crayon-e">items</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">key</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-r">lambda</span><span class="crayon-h"> </span><span class="crayon-v">x</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-v">x</span><span class="crayon-sy">[</span><span class="crayon-cn">1</span><span class="crayon-sy">]</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bd4229807818" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bd4229807818-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bd4229807818-1">[('k3', 10), ('k1', 20), ('k2', 30)]</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <h3 class="wp-block-heading" id="11-kopirovanie-slovarey">Копирование словарей</h3> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bdf371619176" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bdf371619176-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314bdf371619176-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bdf371619176-1"><span class="crayon-c"># создадим исходный словарь с количеством студентов на первом и втором курсах университета</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314bdf371619176-2"><span class="crayon-v">original</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">{</span><span class="crayon-s">'Первый курс'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">174</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'Второй курс'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">131</span><span class="crayon-sy">}</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <p>Копирование объектов в Питоне (не только словарей) осуществляется с помощью <strong>метода .copy()</strong>.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314be1919614829" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314be1919614829-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314be1919614829-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314be1919614829-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314be1919614829-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314be1919614829-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314be1919614829-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314be1919614829-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314be1919614829-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314be1919614829-9">9</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314be1919614829-1"><span class="crayon-c"># создадим копию исходного словаря с помощью метода .copy()</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314be1919614829-2"><span class="crayon-v">new_1</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">original</span><span class="crayon-sy">.</span><span class="crayon-k ">copy</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314be1919614829-3"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314be1919614829-4"><span class="crayon-c"># добавим информацию о третьем курсе в новый словарь</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314be1919614829-5"><span class="crayon-v">new_1</span><span class="crayon-sy">[</span><span class="crayon-s">'Третий курс'</span><span class="crayon-sy">]</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">117</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314be1919614829-6"> </div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314be1919614829-7"><span class="crayon-c"># выведем исходный и новый словари</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314be1919614829-8"><span class="crayon-k ">print</span><span class="crayon-sy">(</span><span class="crayon-v">original</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314be1919614829-9"><span class="crayon-k ">print</span><span class="crayon-sy">(</span><span class="crayon-v">new_1</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314be3875837730" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314be3875837730-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314be3875837730-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314be3875837730-1">{'Первый курс': 174, 'Второй курс': 131}</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314be3875837730-2">{'Первый курс': 174, 'Второй курс': 131, 'Третий курс': 117}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Как мы видим, исходный словарь не изменился. Так и должно быть.</p> <p>Теперь давайте попробуем скопировать словарь с помощью <strong>оператора присваивания</strong> <span id="urvanov-syntax-highlighter-672da51314be5471388101" class="urvanov-syntax-highlighter-syntax urvanov-syntax-highlighter-syntax-inline crayon-theme-familiar-my-copy crayon-theme-familiar-my-copy-inline urvanov-syntax-highlighter-font-consolas" style="font-size: 16px !important; line-height: 22px !important;font-size: 16px !important;"><span class="crayon-pre urvanov-syntax-highlighter-code" style="font-size: 16px !important; line-height: 22px !important;font-size: 16px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><span class="crayon-o">=</span></span></span>.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bf5513665621" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bf5513665621-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314bf5513665621-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bf5513665621-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314bf5513665621-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bf5513665621-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314bf5513665621-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bf5513665621-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314bf5513665621-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bf5513665621-9">9</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bf5513665621-1"><span class="crayon-c"># передадим исходный словарь в новую переменную</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314bf5513665621-2"><span class="crayon-v">new_2</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-i">original</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bf5513665621-3"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314bf5513665621-4"><span class="crayon-c"># удалим элементы нового словаря</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bf5513665621-5"><span class="crayon-v">new_2</span><span class="crayon-sy">.</span><span class="crayon-e">clear</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314bf5513665621-6"> </div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bf5513665621-7"><span class="crayon-c"># выведем исходный и новый словари</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314bf5513665621-8"><span class="crayon-k ">print</span><span class="crayon-sy">(</span><span class="crayon-v">original</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bf5513665621-9"><span class="crayon-k ">print</span><span class="crayon-sy">(</span><span class="crayon-v">new_2</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bf7943099006" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bf7943099006-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314bf7943099006-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bf7943099006-1">{}</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314bf7943099006-2">{}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Данные были удалены из обоих словарей. Так быть не должно и поэтому такой метод копирования использовать не стоит.</p> <h2 class="wp-block-heading" id="12-funktsiya-dir">Функция dir()</h2> <p>На сегодняшнем занятии мне также хотелось бы показать вам <strong>функцию dir()</strong>, благодаря которой можно увидеть методы того или иного объекта. Давайте посмотрим на методы словаря.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bf9695743500" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bf9695743500-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314bf9695743500-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bf9695743500-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314bf9695743500-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bf9695743500-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314bf9695743500-6">6</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bf9695743500-1"><span class="crayon-c"># создадим словарь,</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314bf9695743500-2"><span class="crayon-v">some_dict</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">{</span><span class="crayon-s">'k'</span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">1</span><span class="crayon-sy">}</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bf9695743500-3"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314bf9695743500-4"><span class="crayon-c"># передадим его в функцию dir() и</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bf9695743500-5"><span class="crayon-c"># выведем первые 11 элементов</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314bf9695743500-6"><span class="crayon-k ">dir</span><span class="crayon-sy">(</span><span class="crayon-v">some_dict</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bfb714544930" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bfb714544930-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314bfb714544930-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bfb714544930-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314bfb714544930-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bfb714544930-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314bfb714544930-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bfb714544930-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314bfb714544930-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bfb714544930-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314bfb714544930-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bfb714544930-11">11</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bfb714544930-1">['__class__',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314bfb714544930-2"> '__class_getitem__',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bfb714544930-3"> '__contains__',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314bfb714544930-4"> '__delattr__',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bfb714544930-5"> '__delitem__',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314bfb714544930-6"> '__dir__',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bfb714544930-7"> '__doc__',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314bfb714544930-8"> '__eq__',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bfb714544930-9"> '__format__',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314bfb714544930-10"> '__ge__',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bfb714544930-11"> '__getattribute__']</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Вначале всегда идут так называемые специальные методы. Они начинаются и заканчиваются символом двойного подчеркивания <span id="urvanov-syntax-highlighter-672da51314bfd976274061" class="urvanov-syntax-highlighter-syntax urvanov-syntax-highlighter-syntax-inline crayon-theme-familiar-my-copy crayon-theme-familiar-my-copy-inline urvanov-syntax-highlighter-font-consolas" style="font-size: 16px !important; line-height: 22px !important;font-size: 16px !important;"><span class="crayon-pre urvanov-syntax-highlighter-code" style="font-size: 16px !important; line-height: 22px !important;font-size: 16px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><span class="crayon-v">__</span></span></span>.</p> <p>Например, когда мы вызываем функцию <strong>print()</strong> и передаем ей словарь.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314bff617476743" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314bff617476743-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314bff617476743-1"><span class="crayon-k ">print</span><span class="crayon-sy">(</span><span class="crayon-v">some_dict</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c01792278585" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c01792278585-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c01792278585-1">{'k': 1}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>На самом деле мы применяем к словарю метод <span id="urvanov-syntax-highlighter-672da51314c03005571125" class="urvanov-syntax-highlighter-syntax urvanov-syntax-highlighter-syntax-inline crayon-theme-familiar-my-copy crayon-theme-familiar-my-copy-inline urvanov-syntax-highlighter-font-consolas" style="font-size: 16px !important; line-height: 22px !important;font-size: 16px !important;"><span class="crayon-pre urvanov-syntax-highlighter-code" style="font-size: 16px !important; line-height: 22px !important;font-size: 16px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><span class="crayon-e">__str__</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></span></span>.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c05127700496" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c05127700496-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c05127700496-1"><span class="crayon-v">some_dict</span><span class="crayon-sy">.</span><span class="crayon-e">__str__</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c07049344534" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c07049344534-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c07049344534-1">'{'k': 1}'</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>В большинстве случаев нас будут интересовать методы без символов двойного подчеркивания.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c09660994065" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c09660994065-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c09660994065-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c09660994065-1"><span class="crayon-c"># выведем последние 11 элементов списка</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c09660994065-2"><span class="crayon-k ">dir</span><span class="crayon-sy">(</span><span class="crayon-v">some_dict</span><span class="crayon-sy">)</span><span class="crayon-sy">[</span><span class="crayon-o">-</span><span class="crayon-cn">11</span><span class="crayon-o">:</span><span class="crayon-sy">]</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c0b840474897" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c0b840474897-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c0b840474897-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c0b840474897-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c0b840474897-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c0b840474897-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c0b840474897-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c0b840474897-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c0b840474897-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c0b840474897-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c0b840474897-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c0b840474897-11">11</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c0b840474897-1">['clear',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c0b840474897-2"> 'copy',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c0b840474897-3"> 'fromkeys',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c0b840474897-4"> 'get',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c0b840474897-5"> 'items',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c0b840474897-6"> 'keys',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c0b840474897-7"> 'pop',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c0b840474897-8"> 'popitem',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c0b840474897-9"> 'setdefault',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c0b840474897-10"> 'update',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c0b840474897-11"> 'values']</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Со всеми этими методами словаря мы уже познакомились.</p> <h2 class="wp-block-heading" id="13-dict-comprehension">Dict comprehension</h2> <p>Dictionary comprehension, как и в случае со <a href="https://www.dmitrymakarov.ru/python/list-tuple-set-07/#9-list-comprehension">списками</a>, позволяет превратить один словарь в другой. В процессе этого превращения, элементы исходного словаря могут быть изменены или отобраны на основе какого-либо условия.</p> <p class="has-background" style="background-color:#ffe8c4">Основной целью использования как list, так и dict comprehension является упрощение и повышение читаемости кода.</p> <p>Приведем базовую схему dict comprehension.</p> <div class="wp-block-image is-resized"> <figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="318" src="https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/dictcomp-1024x318.jpg" alt="схема dict comprehension в Питоне" class="wp-image-8551" style="width:609px;height:auto" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/dictcomp-1024x318.jpg 1024w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/dictcomp-300x93.jpg 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/dictcomp-768x239.jpg 768w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/dictcomp-1536x478.jpg 1536w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/dictcomp-2048x637.jpg 2048w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/dictcomp-1200x373.jpg 1200w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/dictcomp-600x187.jpg 600w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure></div> <p>Посмотрим на два несложных примера.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c0d420229794" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c0d420229794-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c0d420229794-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c0d420229794-1"><span class="crayon-c"># создадим еще один словарь</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c0d420229794-2"><span class="crayon-v">source_dict</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">{</span><span class="crayon-s">'k1'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">2</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'k2'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">4</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'k3'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">6</span><span class="crayon-sy">}</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <p>В первом примере умножим каждое значение на два.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c0f597309692" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c0f597309692-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c0f597309692-1"><span class="crayon-sy">{</span><span class="crayon-v">k</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-v">v</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-cn">2</span><span class="crayon-h"> </span><span class="crayon-st">for</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-v">k</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">v</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-v">source_dict</span><span class="crayon-sy">.</span><span class="crayon-e">items</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-sy">}</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c11742679021" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c11742679021-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c11742679021-1">{'k1': 4, 'k2': 8, 'k3': 12}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Во втором примере сделаем символы всех ключей заглавными с помощью <strong>метода .upper()</strong>.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c21641181236" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c21641181236-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c21641181236-1"><span class="crayon-sy">{</span><span class="crayon-v">k</span><span class="crayon-sy">.</span><span class="crayon-e">upper</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-i">v</span><span class="crayon-h"> </span><span class="crayon-st">for</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-v">k</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">v</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-v">source_dict</span><span class="crayon-sy">.</span><span class="crayon-e">items</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-sy">}</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c23876637630" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c23876637630-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c23876637630-1">{'K1': 2, 'K2': 4, 'K3': 6}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Теперь предположим, мы хотим отсортировать те пары, в которых значение больше двух, но меньше шести.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c25120575604" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c25120575604-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c25120575604-1"><span class="crayon-sy">{</span><span class="crayon-v">k</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-i">v</span><span class="crayon-h"> </span><span class="crayon-st">for</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-v">k</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">v</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-v">source_dict</span><span class="crayon-sy">.</span><span class="crayon-e">items</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-st">if</span><span class="crayon-h"> </span><span class="crayon-v">v</span><span class="crayon-h"> </span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-cn">2</span><span class="crayon-h"> </span><span class="crayon-st">if</span><span class="crayon-h"> </span><span class="crayon-v">v</span><span class="crayon-h"> </span><span class="crayon-o"><</span><span class="crayon-h"> </span><span class="crayon-cn">6</span><span class="crayon-sy">}</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0003 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c27215456606" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c27215456606-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c27215456606-1">{'k2': 4}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Если бы мы выполняли эту задачу с помощью цикла <strong>for</strong>, то использовали бы оператор И.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c29504267434" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c29504267434-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c29504267434-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c29504267434-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c29504267434-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c29504267434-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c29504267434-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c29504267434-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c29504267434-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c29504267434-9">9</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c29504267434-1"><span class="crayon-v">new_dict</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">{</span><span class="crayon-sy">}</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c29504267434-2"> </div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c29504267434-3"><span class="crayon-st">for</span><span class="crayon-h"> </span><span class="crayon-v">k</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-i">v</span><span class="crayon-h"> </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-v">source_dict</span><span class="crayon-sy">.</span><span class="crayon-e">items</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-o">:</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c29504267434-4"><span class="crayon-h"> </span><span class="crayon-st">if</span><span class="crayon-h"> </span><span class="crayon-v">v</span><span class="crayon-h"> </span><span class="crayon-o">></span><span class="crayon-h"> </span><span class="crayon-cn">2</span><span class="crayon-h"> </span><span class="crayon-st">and</span><span class="crayon-h"> </span><span class="crayon-v">v</span><span class="crayon-h"> </span><span class="crayon-o"><</span><span class="crayon-h"> </span><span class="crayon-cn">6</span><span class="crayon-o">:</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c29504267434-5"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c29504267434-6"><span class="crayon-h"> </span><span class="crayon-c"># если условия верны, записываем ключ и значение в новый словарь</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c29504267434-7"><span class="crayon-h"> </span><span class="crayon-v">new_dict</span><span class="crayon-sy">[</span><span class="crayon-v">k</span><span class="crayon-sy">]</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-i">v</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c29504267434-8"> </div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c29504267434-9"><span class="crayon-v">new_dict</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0003 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c2b883922491" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c2b883922491-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c2b883922491-1">{'k2': 4}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Как и в случае list comprehension, применение <strong>условия if-else</strong> несколько меняет изначальную схему. Предположим, мы хотим определить, какие из значений четные, а какие нечетные.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c2d626056905" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c2d626056905-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c2d626056905-1"><span class="crayon-sy">{</span><span class="crayon-v">k</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-s">'even'</span><span class="crayon-h"> </span><span class="crayon-st">if</span><span class="crayon-h"> </span><span class="crayon-v">v</span><span class="crayon-h"> </span><span class="crayon-o">%</span><span class="crayon-h"> </span><span class="crayon-cn">2</span><span class="crayon-h"> </span><span class="crayon-o">==</span><span class="crayon-h"> </span><span class="crayon-cn">0</span><span class="crayon-h"> </span><span class="crayon-st">else</span><span class="crayon-h"> </span><span class="crayon-s">'odd'</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-st">for</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-v">k</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">v</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-v">source_dict</span><span class="crayon-sy">.</span><span class="crayon-e">items</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-sy">}</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c2f872652779" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c2f872652779-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c2f872652779-1">{'k1': 'even', 'k2': 'even', 'k3': 'even'}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Dict comprehension можно использовать вместо метода <strong>.fromkeys()</strong>.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c31786473693" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c31786473693-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c31786473693-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c31786473693-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c31786473693-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c31786473693-5">5</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c31786473693-1"><span class="crayon-c"># создадим кортеж из ключей</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c31786473693-2"><span class="crayon-v">keys</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-s">'k1'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'k2'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'k3'</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c31786473693-3"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c31786473693-4"><span class="crayon-c"># передадим словарю ключи из кортежа keys и зададим значение 0 каждому из них</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c31786473693-5"><span class="crayon-sy">{</span><span class="crayon-v">k</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">0</span><span class="crayon-h"> </span><span class="crayon-st">for</span><span class="crayon-h"> </span><span class="crayon-i">k</span><span class="crayon-h"> </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-v">keys</span><span class="crayon-sy">}</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c33082911901" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c33082911901-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c33082911901-1">{'k1': 0, 'k2': 0, 'k3': 0}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <h2 class="wp-block-heading" id="14-dopolnitelnye-primery">Дополнительные примеры</h2> <h3 class="wp-block-heading" id="15-lambda-funktsiya-funktsii-map-i-zip">lambda-функция, функции map() и zip()</h3> <h4 class="wp-block-heading" id="16-primer-so-spiskom">Пример со списком</h4> <p>Возьмем список фруктов.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c36225487675" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c36225487675-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c36225487675-1"><span class="crayon-v">words</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">[</span><span class="crayon-s">'apple'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'banana'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'fig'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'blackberry'</span><span class="crayon-sy">]</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <p>Предположим, что мы хотим создать словарь, где ключами будут названия фруктов, а значениями — количество букв в каждом из слов.</p> <div class="wp-block-image is-resized"> <figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="106" src="https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/image-1024x106.png" alt="словарь, в котором ключи - это слова, а значения - их длина" class="wp-image-8519" style="width:589px;height:auto" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/image-1024x106.png 1024w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/image-300x31.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/image-768x79.png 768w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/image-1536x158.png 1536w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/image-2048x211.png 2048w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/image-1200x124.png 1200w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/image-600x62.png 600w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure></div> <p>Вначале создадим список с количеством символов. Для этого нам понадобится <strong>функция map()</strong>. Эта функция принимает два аргумента: во-первых, что нужно сделать с каждым из элементов, во-вторых, перечень этих самых элементов.</p> <div class="wp-block-image is-resized"> <figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="1024" height="401" src="https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/mapf1-1024x401.jpg" alt="функция map() в Питоне" class="wp-image-8522" style="width:539px;height:auto" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/mapf1-1024x401.jpg 1024w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/mapf1-300x117.jpg 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/mapf1-768x300.jpg 768w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/mapf1-1536x601.jpg 1536w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/mapf1-1200x469.jpg 1200w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/mapf1-600x235.jpg 600w, https://www.dmitrymakarov.ru/wp-content/uploads/2021/12/mapf1.jpg 1741w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure></div> <p>В нашем случае первым аргументом будет lambda-функция <span id="urvanov-syntax-highlighter-672da51314c38365940064" class="urvanov-syntax-highlighter-syntax urvanov-syntax-highlighter-syntax-inline crayon-theme-familiar-my-copy crayon-theme-familiar-my-copy-inline urvanov-syntax-highlighter-font-consolas" style="font-size: 16px !important; line-height: 22px !important;font-size: 16px !important;"><span class="crayon-pre urvanov-syntax-highlighter-code" style="font-size: 16px !important; line-height: 22px !important;font-size: 16px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><span class="crayon-r">lambda</span> <span class="crayon-i">word</span> <span class="crayon-o">:</span> <span class="crayon-k ">len</span><span class="crayon-sy">(</span><span class="crayon-v">word</span><span class="crayon-sy">)</span></span></span>, которая просто посчитает длину передаваемого ей слова, а вторым аргументом будет наш список фруктов.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c3c596426697" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c3c596426697-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c3c596426697-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c3c596426697-1"><span class="crayon-v">length</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-k ">list</span><span class="crayon-sy">(</span><span class="crayon-k ">map</span><span class="crayon-sy">(</span><span class="crayon-r">lambda</span><span class="crayon-h"> </span><span class="crayon-v">word</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-k ">len</span><span class="crayon-sy">(</span><span class="crayon-v">word</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">words</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c3c596426697-2"><span class="crayon-v">length</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c42693352337" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c42693352337-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c42693352337-1">[5, 6, 3, 10]</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Как вы видите, мы использовали функцию <strong>list()</strong> для преобразования результата в список.</p> <p>Остается создать словарь. Для этого с помощью знакомой нам функции <strong>zip()</strong> мы создадим пары (название фрукта, количество символов) и передадим их функции <strong>dict()</strong> для создания словаря.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c49516420472" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c49516420472-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c49516420472-1"><span class="crayon-k ">dict</span><span class="crayon-sy">(</span><span class="crayon-k ">zip</span><span class="crayon-sy">(</span><span class="crayon-v">words</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">length</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c4f603509302" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c4f603509302-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c4f603509302-1">{'apple': 5, 'banana': 6, 'fig': 3, 'blackberry': 10}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Интересно, что эту же задачу можно решить с помощью list comprehension.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c55619653764" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c55619653764-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c55619653764-1"><span class="crayon-k ">dict</span><span class="crayon-sy">(</span><span class="crayon-k ">zip</span><span class="crayon-sy">(</span><span class="crayon-v">words</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-sy">[</span><span class="crayon-k ">len</span><span class="crayon-sy">(</span><span class="crayon-v">word</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-st">for</span><span class="crayon-h"> </span><span class="crayon-e">word </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-v">words</span><span class="crayon-sy">]</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c5b129251928" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c5b129251928-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c5b129251928-1">{'apple': 5, 'banana': 6, 'fig': 3, 'blackberry': 10}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>В данном случае функции <strong>zip()</strong> мы передаем список фруктов и очень простую list comprehension, которая рассчитывает длину слов.</p> <h4 class="wp-block-heading" id="17-primer-so-slovarem">Пример со словарем</h4> <p>Теперь поработаем со словарями. Предположим, что мы продолжаем спрашивать людей об их <a href="https://www.dmitrymakarov.ru/intro/stats-08/#4-primer-rost-muzhchin-v-rossii">росте</a>, и у нас есть несколько американцев, которые сообщили свой рост в футах.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c62129301615" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c62129301615-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c62129301615-1"><span class="crayon-v">height_feet</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">{</span><span class="crayon-s">'Alex'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">6.1</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'Jerry'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">5.4</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'Ben'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">5.8</span><span class="crayon-sy">}</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <p>Наша задача — создать точно такой же словарь, но чтобы футы были преобразованы в метры. Вначале создадим список с данными о росте в метрах.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c65162615101" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c65162615101-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c65162615101-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c65162615101-3">3</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c65162615101-1"><span class="crayon-c"># один фут равен 0,3048 метра </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c65162615101-2"><span class="crayon-v">metres</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-k ">list</span><span class="crayon-sy">(</span><span class="crayon-k ">map</span><span class="crayon-sy">(</span><span class="crayon-r">lambda</span><span class="crayon-h"> </span><span class="crayon-v">m</span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-v">m</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-cn">0.3048</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">height_feet</span><span class="crayon-sy">.</span><span class="crayon-e">values</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c65162615101-3"><span class="crayon-v">metres</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c6c292095675" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c6c292095675-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c6c292095675-1">[1.85928, 1.6459200000000003, 1.76784]</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Здесь мы снова воспользовались <strong>lambda-функцией</strong>, которую в качестве аргумента передали в функцию <strong>map()</strong>. Обратите внимание, вторым аргументом стали значения словаря, полученные через метод <strong>.values()</strong>.</p> <p>После этого мы можем снова воспользоваться <strong>функцией zip()</strong>, которой передадим ключи исходного словаря и список данных о росте с округлением до двух знаков после запятой.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c73092168656" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c73092168656-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c73092168656-1"><span class="crayon-k ">dict</span><span class="crayon-sy">(</span><span class="crayon-k ">zip</span><span class="crayon-sy">(</span><span class="crayon-v">height_feet</span><span class="crayon-sy">.</span><span class="crayon-e">keys</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">round</span><span class="crayon-sy">(</span><span class="crayon-v">metres</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">2</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c7a406545006" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c7a406545006-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c7a406545006-1">{'Alex': 1.86, 'Jerry': 1.65, 'Ben': 1.77}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Как и в предыдущем примере, эту задачу можно решить с помощью dict comprehension.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c81167877151" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c81167877151-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c81167877151-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c81167877151-1"><span class="crayon-c"># мы просто преобразуем значения словаря в метры</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c81167877151-2"><span class="crayon-sy">{</span><span class="crayon-v">k</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">round</span><span class="crayon-sy">(</span><span class="crayon-v">v</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-cn">0.3048</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">2</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-st">for</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-v">k</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">v</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-v">height_feet</span><span class="crayon-sy">.</span><span class="crayon-e">items</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-sy">}</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0003 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c88275147681" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c88275147681-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c88275147681-1">{'Alex': 1.86, 'Jerry': 1.65, 'Ben': 1.77}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Код соответствует основной схеме, приведенной выше, и в целом читается проще, чем конструкция с <strong>lambda-функцией</strong> и функцией <strong>map()</strong>.</p> <h3 class="wp-block-heading" id="18-vlozhennye-slovari">Вложенные словари</h3> <p>Рассмотрим более сложный словарь с информацией о нескольких сотрудниках.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c90901956185" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c90901956185-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c90901956185-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c90901956185-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c90901956185-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c90901956185-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c90901956185-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c90901956185-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c90901956185-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c90901956185-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c90901956185-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c90901956185-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c90901956185-12">12</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c90901956185-13">13</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c90901956185-14">14</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c90901956185-1"><span class="crayon-v">employees</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">{</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c90901956185-2"><span class="crayon-h"> </span><span class="crayon-s">'id1'</span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-sy">{</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c90901956185-3"><span class="crayon-h"> </span><span class="crayon-s">'first name'</span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-s">'Александр'</span><span class="crayon-sy">,</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c90901956185-4"><span class="crayon-h"> </span><span class="crayon-s">'last name'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-s">'Иванов'</span><span class="crayon-sy">,</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c90901956185-5"><span class="crayon-h"> </span><span class="crayon-s">'age'</span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">30</span><span class="crayon-sy">,</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c90901956185-6"><span class="crayon-h"> </span><span class="crayon-s">'job'</span><span class="crayon-o">:</span><span class="crayon-s">'программист'</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c90901956185-7"><span class="crayon-h"> </span><span class="crayon-sy">}</span><span class="crayon-sy">,</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c90901956185-8"><span class="crayon-h"> </span><span class="crayon-s">'id2'</span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-sy">{</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c90901956185-9"><span class="crayon-h"> </span><span class="crayon-s">'first name'</span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-s">'Ольга'</span><span class="crayon-sy">,</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c90901956185-10"><span class="crayon-h"> </span><span class="crayon-s">'last name'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-s">'Петрова'</span><span class="crayon-sy">,</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c90901956185-11"><span class="crayon-h"> </span><span class="crayon-s">'age'</span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">35</span><span class="crayon-sy">,</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c90901956185-12"><span class="crayon-h"> </span><span class="crayon-s">'job'</span><span class="crayon-o">:</span><span class="crayon-s">'ML-engineer'</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c90901956185-13"><span class="crayon-h"> </span><span class="crayon-sy">}</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c90901956185-14"><span class="crayon-sy">}</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0003 seconds] --> </div> <p>В данном случае ключами словаря выступают id сотрудников, а значениями — вложенные словари с информацией о них.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c97820750095" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c97820750095-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c97820750095-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c97820750095-1"><span class="crayon-st">for</span><span class="crayon-h"> </span><span class="crayon-i">v</span><span class="crayon-h"> </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-v">employees</span><span class="crayon-sy">.</span><span class="crayon-e">values</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-o">:</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c97820750095-2"><span class="crayon-h"> </span><span class="crayon-k ">print</span><span class="crayon-sy">(</span><span class="crayon-v">v</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314c9e472098090" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314c9e472098090-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314c9e472098090-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314c9e472098090-1">{'first name': 'Александр', 'last name': 'Иванов', 'age': 30, 'job': 'программист'}</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314c9e472098090-2">{'first name': 'Ольга', 'last name': 'Петрова', 'age': 35, 'job': 'ML-engineer'}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <h4 class="wp-block-heading" id="19-bazovye-operatsii">Базовые операции</h4> <p>Для того чтобы <strong>вывести значение</strong> элемента вложенного словаря, воспользуемся двойным ключом.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314ca6169399365" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314ca6169399365-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314ca6169399365-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314ca6169399365-1"><span class="crayon-c"># первый ключ - нужный нам сотрудник, второй - элемент с информацией о нем</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314ca6169399365-2"><span class="crayon-v">employees</span><span class="crayon-sy">[</span><span class="crayon-s">'id1'</span><span class="crayon-sy">]</span><span class="crayon-sy">[</span><span class="crayon-s">'age'</span><span class="crayon-sy">]</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314cab123164832" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cab123164832-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cab123164832-1">30</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Небольшое отступление от темы. Сложные структуры данных бывает удобно вывести с помощью <strong>функции pprint()</strong> одноименного модуля.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314cad208534606" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cad208534606-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cad208534606-1"><span class="crayon-st">from</span><span class="crayon-h"> </span><span class="crayon-k ">pprint</span><span class="crayon-h"> </span><span class="crayon-r">import</span><span class="crayon-h"> </span><span class="crayon-k ">pprint</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <p>Функция <strong>pprint()</strong> расшифровывается как pretty print («красивая печать») и в некоторых случаях справляется со своей задачей лучше обычной функции <strong>print()</strong>.</p> <p>Посмотрим как можно добавить вложенный словарь.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314cb3610558496" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cb3610558496-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cb3610558496-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cb3610558496-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cb3610558496-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cb3610558496-5">5</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cb3610558496-1"><span class="crayon-c"># добавим информацию о новом сотруднике</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cb3610558496-2"><span class="crayon-v">employees</span><span class="crayon-sy">[</span><span class="crayon-s">'id3'</span><span class="crayon-sy">]</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">{</span><span class="crayon-s">'first name'</span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-s">'Дарья'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'last name'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-s">'Некрасова'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'age'</span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">27</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'job'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-s">'веб-дизайнер'</span><span class="crayon-h"> </span><span class="crayon-sy">}</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cb3610558496-3"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cb3610558496-4"><span class="crayon-c"># и выведем обновленный словарь с помощью функции pprint()</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cb3610558496-5"><span class="crayon-k ">pprint</span><span class="crayon-sy">(</span><span class="crayon-v">employees</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314cb7783809677" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cb7783809677-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cb7783809677-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cb7783809677-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cb7783809677-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cb7783809677-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cb7783809677-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cb7783809677-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cb7783809677-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cb7783809677-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cb7783809677-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cb7783809677-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cb7783809677-12">12</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cb7783809677-1">{'id1': {'age': 30,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cb7783809677-2"> 'first name': 'Александр',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cb7783809677-3"> 'job': 'программист',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cb7783809677-4"> 'last name': 'Иванов'},</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cb7783809677-5"> 'id2': {'age': 35,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cb7783809677-6"> 'first name': 'Ольга',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cb7783809677-7"> 'job': 'ML-engineer',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cb7783809677-8"> 'last name': 'Петрова'},</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cb7783809677-9"> 'id3': {'age': 27,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cb7783809677-10"> 'first name': 'Дарья',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cb7783809677-11"> 'job': 'веб-дизайнер',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cb7783809677-12"> 'last name': 'Некрасова'}}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Изменить значение вложенного словаря можно также с помощью двойного ключа.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314cbc546083431" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cbc546083431-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cbc546083431-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cbc546083431-1"><span class="crayon-v">employees</span><span class="crayon-sy">[</span><span class="crayon-s">'id3'</span><span class="crayon-sy">]</span><span class="crayon-sy">[</span><span class="crayon-s">'age'</span><span class="crayon-sy">]</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">26</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cbc546083431-2"><span class="crayon-k ">pprint</span><span class="crayon-sy">(</span><span class="crayon-v">employees</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314cc3393721508" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cc3393721508-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cc3393721508-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cc3393721508-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cc3393721508-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cc3393721508-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cc3393721508-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cc3393721508-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cc3393721508-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cc3393721508-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cc3393721508-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cc3393721508-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cc3393721508-12">12</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cc3393721508-1">{'id1': {'age': 30,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cc3393721508-2"> 'first name': 'Александр',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cc3393721508-3"> 'job': 'программист',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cc3393721508-4"> 'last name': 'Иванов'},</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cc3393721508-5"> 'id2': {'age': 35,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cc3393721508-6"> 'first name': 'Ольга',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cc3393721508-7"> 'job': 'ML-engineer',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cc3393721508-8"> 'last name': 'Петрова'},</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cc3393721508-9"> 'id3': {'age': 26,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cc3393721508-10"> 'first name': 'Дарья',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cc3393721508-11"> 'job': 'веб-дизайнер',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cc3393721508-12"> 'last name': 'Некрасова'}}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <h4 class="wp-block-heading" id="20-tsikly-for">Циклы for</h4> <p>Посмотрим, как можно использовать цикл for со вложенными словарями. Давайте заменим <a href="https://www.dmitrymakarov.ru/python/data-types-02/">тип данных</a> с информацией о возрасте сотрудника с int на float.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314cc8833111728" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cc8833111728-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cc8833111728-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cc8833111728-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cc8833111728-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cc8833111728-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cc8833111728-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cc8833111728-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cc8833111728-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cc8833111728-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cc8833111728-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cc8833111728-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cc8833111728-12">12</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cc8833111728-13">13</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cc8833111728-14">14</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cc8833111728-1"><span class="crayon-c"># для этого вначале пройдемся по вложенным словарям,</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cc8833111728-2"><span class="crayon-c"># т.е. по значениям info внешнего словаря employees</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cc8833111728-3"><span class="crayon-st">for</span><span class="crayon-h"> </span><span class="crayon-e">info </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-v">employees</span><span class="crayon-sy">.</span><span class="crayon-e">values</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-o">:</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cc8833111728-4"> </div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cc8833111728-5"><span class="crayon-h"> </span><span class="crayon-c"># затем по ключам и значениям вложенного словаря info</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cc8833111728-6"><span class="crayon-h"> </span><span class="crayon-st">for</span><span class="crayon-h"> </span><span class="crayon-v">k</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-i">v</span><span class="crayon-h"> </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-v">info</span><span class="crayon-sy">.</span><span class="crayon-e">items</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-o">:</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cc8833111728-7"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cc8833111728-8"><span class="crayon-h"> </span><span class="crayon-c"># если ключ совпадет со словом 'age'</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cc8833111728-9"><span class="crayon-h"> </span><span class="crayon-st">if</span><span class="crayon-h"> </span><span class="crayon-v">k</span><span class="crayon-h"> </span><span class="crayon-o">==</span><span class="crayon-h"> </span><span class="crayon-s">'age'</span><span class="crayon-o">:</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cc8833111728-10"> </div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cc8833111728-11"><span class="crayon-h"> </span><span class="crayon-c"># преобразуем значение в тип float</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cc8833111728-12"><span class="crayon-h"> </span><span class="crayon-v">info</span><span class="crayon-sy">[</span><span class="crayon-v">k</span><span class="crayon-sy">]</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-k ">float</span><span class="crayon-sy">(</span><span class="crayon-v">v</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cc8833111728-13"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cc8833111728-14"><span class="crayon-k ">pprint</span><span class="crayon-sy">(</span><span class="crayon-v">employees</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0003 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314ccd272148600" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314ccd272148600-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314ccd272148600-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314ccd272148600-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314ccd272148600-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314ccd272148600-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314ccd272148600-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314ccd272148600-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314ccd272148600-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314ccd272148600-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314ccd272148600-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314ccd272148600-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314ccd272148600-12">12</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314ccd272148600-1">{'id1': {'age': 30.0,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314ccd272148600-2"> 'first name': 'Александр',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314ccd272148600-3"> 'job': 'программист',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314ccd272148600-4"> 'last name': 'Иванов'},</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314ccd272148600-5"> 'id2': {'age': 35.0,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314ccd272148600-6"> 'first name': 'Ольга',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314ccd272148600-7"> 'job': 'ML-engineer',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314ccd272148600-8"> 'last name': 'Петрова'},</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314ccd272148600-9"> 'id3': {'age': 26.0,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314ccd272148600-10"> 'first name': 'Дарья',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314ccd272148600-11"> 'job': 'веб-дизайнер',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314ccd272148600-12"> 'last name': 'Некрасова'}}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <h4 class="wp-block-heading" id="21-vlozhennye-slovari-i-dict-comprehension">Вложенные словари и dict comprehension</h4> <p>Вложенные словари также допускают использование dict comprehension. Предположим, что мы хотим вернуть данные о возрасте из типа float обратно в тип int. Разобьем эту задачу на несколько этапов.</p> <p><strong>Шаг 1</strong>. Просто выведем словарь employees без изменений, используя dict comprehension.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314ccf933063949" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314ccf933063949-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314ccf933063949-1"><span class="crayon-k ">pprint</span><span class="crayon-sy">(</span><span class="crayon-sy">{</span><span class="crayon-k ">id</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-e">info </span><span class="crayon-st">for</span><span class="crayon-h"> </span><span class="crayon-k ">id</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-e">info </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-v">employees</span><span class="crayon-sy">.</span><span class="crayon-e">items</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-sy">}</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314cd5894656667" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cd5894656667-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cd5894656667-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cd5894656667-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cd5894656667-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cd5894656667-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cd5894656667-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cd5894656667-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cd5894656667-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cd5894656667-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cd5894656667-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cd5894656667-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cd5894656667-12">12</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cd5894656667-1">{'id1': {'age': 30.0,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cd5894656667-2"> 'first name': 'Александр',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cd5894656667-3"> 'job': 'программист',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cd5894656667-4"> 'last name': 'Иванов'},</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cd5894656667-5"> 'id2': {'age': 35.0,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cd5894656667-6"> 'first name': 'Ольга',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cd5894656667-7"> 'job': 'ML-engineer',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cd5894656667-8"> 'last name': 'Петрова'},</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cd5894656667-9"> 'id3': {'age': 26.0,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cd5894656667-10"> 'first name': 'Дарья',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cd5894656667-11"> 'job': 'веб-дизайнер',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cd5894656667-12"> 'last name': 'Некрасова'}}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p><strong>Шаг 2</strong>. Создадим еще один dict comprehension, с помощью которого внутри каждого вложенного словаря мы заменим тип данных значения с float на int, если ключ совпадает с age, если не сопадает — оставим значение без изменений (по сути, <strong>условие с if-else</strong>).</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314cd9421877257" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cd9421877257-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cd9421877257-1"><span class="crayon-sy">{</span><span class="crayon-v">k</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-k ">int</span><span class="crayon-sy">(</span><span class="crayon-v">v</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-st">if</span><span class="crayon-h"> </span><span class="crayon-v">k</span><span class="crayon-h"> </span><span class="crayon-o">==</span><span class="crayon-h"> </span><span class="crayon-s">'age'</span><span class="crayon-h"> </span><span class="crayon-st">else</span><span class="crayon-h"> </span><span class="crayon-v">v</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-st">for</span><span class="crayon-h"> </span><span class="crayon-v">k</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-i">v</span><span class="crayon-h"> </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-v">info</span><span class="crayon-sy">.</span><span class="crayon-e">items</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-sy">}</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0003 seconds] --> </div> <p><strong>Шаг 3</strong>. Вставим второй dict comprehension в первый вместо переменной info. Напомнью, info — это значения внешнего словаря, которые сами по себе являются словарями. Именно к ним мы и применим второй dict comprehension.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314cdf144604306" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cdf144604306-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cdf144604306-1"><span class="crayon-k ">pprint</span><span class="crayon-sy">(</span><span class="crayon-sy">{</span><span class="crayon-k ">id</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-sy">{</span><span class="crayon-v">k</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-k ">int</span><span class="crayon-sy">(</span><span class="crayon-v">v</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-st">if</span><span class="crayon-h"> </span><span class="crayon-v">k</span><span class="crayon-h"> </span><span class="crayon-o">==</span><span class="crayon-h"> </span><span class="crayon-s">'age'</span><span class="crayon-h"> </span><span class="crayon-st">else</span><span class="crayon-h"> </span><span class="crayon-v">v</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-st">for</span><span class="crayon-h"> </span><span class="crayon-v">k</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-i">v</span><span class="crayon-h"> </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-v">info</span><span class="crayon-sy">.</span><span class="crayon-e">items</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-sy">}</span><span class="crayon-h"> </span><span class="crayon-st">for</span><span class="crayon-h"> </span><span class="crayon-k ">id</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-e">info </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-v">employees</span><span class="crayon-sy">.</span><span class="crayon-e">items</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-sy">}</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0004 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314ce2293015711" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314ce2293015711-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314ce2293015711-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314ce2293015711-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314ce2293015711-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314ce2293015711-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314ce2293015711-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314ce2293015711-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314ce2293015711-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314ce2293015711-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314ce2293015711-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314ce2293015711-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314ce2293015711-12">12</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314ce2293015711-1">{'id1': {'age': 30,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314ce2293015711-2"> 'first name': 'Александр',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314ce2293015711-3"> 'job': 'программист',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314ce2293015711-4"> 'last name': 'Иванов'},</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314ce2293015711-5"> 'id2': {'age': 35,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314ce2293015711-6"> 'first name': 'Ольга',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314ce2293015711-7"> 'job': 'ML-engineer',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314ce2293015711-8"> 'last name': 'Петрова'},</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314ce2293015711-9"> 'id3': {'age': 26,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314ce2293015711-10"> 'first name': 'Дарья',</div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314ce2293015711-11"> 'job': 'веб-дизайнер',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314ce2293015711-12"> 'last name': 'Некрасова'}}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>С поставленной задачей мы справились. Впрочем, такая сложная схема dict comprehension идет вразрез с самой идеей этого метода, которая заключается в упрощении кода.</p> <h3 class="wp-block-heading" id="22-chastota-slov-v-tekste">Частота слов в тексте</h3> <p>Напоследок разберем очень несложный пример подсчета частоты слов в тексте. Это уже знакомый нам мешок слов (Bag of Words, BoW). В качестве примера возьмем уже известный нам текст про Париж, музеи и искусство.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314ce8573319370" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314ce8573319370-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314ce8573319370-1"><span class="crayon-v">corpus</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-s">'When we were in Paris we visited a lot of museums. We first went to the Louvre, the largest art museum in the world. I have always been interested in art so I spent many hours there. The museum is enourmous, so a week there would not be enough.'</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <h4 class="wp-block-heading" id="23-predvaritelnaya-obrabotka-teksta">Предварительная обработка текста</h4> <p>Превратим строку в список слов.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314ceb619813852" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314ceb619813852-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314ceb619813852-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314ceb619813852-1"><span class="crayon-v">words</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">corpus</span><span class="crayon-sy">.</span><span class="crayon-e">split</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314ceb619813852-2"><span class="crayon-k ">print</span><span class="crayon-sy">(</span><span class="crayon-v">words</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314cf1186613909" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cf1186613909-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cf1186613909-1">['When', 'we', 'were', 'in', 'Paris', 'we', 'visited', 'a', 'lot', 'of', 'museums.', 'We', 'first', 'went', 'to', 'the', 'Louvre,', 'the', 'largest', 'art', 'museum', 'in', 'the', 'world.', 'I', 'have', 'always', 'been', 'interested', 'in', 'art', 'so', 'I', 'spent', 'many', 'hours', 'there.', 'The', 'museum', 'is', 'enourmous,', 'so', 'a', 'week', 'there', 'would', 'not', 'be', 'enough.']</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Применим list comprehension, чтобы избавиться от точек и запятых. Помимо этого, переведем все слова в нижний регистр.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314cf5007403782" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cf5007403782-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cf5007403782-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cf5007403782-1"><span class="crayon-v">words</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">[</span><span class="crayon-v">word</span><span class="crayon-sy">.</span><span class="crayon-e">strip</span><span class="crayon-sy">(</span><span class="crayon-s">'.'</span><span class="crayon-sy">)</span><span class="crayon-sy">.</span><span class="crayon-e">strip</span><span class="crayon-sy">(</span><span class="crayon-s">','</span><span class="crayon-sy">)</span><span class="crayon-sy">.</span><span class="crayon-e">lower</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-st">for</span><span class="crayon-h"> </span><span class="crayon-e">word </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-v">words</span><span class="crayon-sy">]</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cf5007403782-2"><span class="crayon-k ">print</span><span class="crayon-sy">(</span><span class="crayon-v">words</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314cf8504549243" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cf8504549243-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cf8504549243-1">['when', 'we', 'were', 'in', 'paris', 'we', 'visited', 'a', 'lot', 'of', 'museums', 'we', 'first', 'went', 'to', 'the', 'louvre', 'the', 'largest', 'art', 'museum', 'in', 'the', 'world', 'i', 'have', 'always', 'been', 'interested', 'in', 'art', 'so', 'i', 'spent', 'many', 'hours', 'there', 'the', 'museum', 'is', 'enourmous', 'so', 'a', 'week', 'there', 'would', 'not', 'be', 'enough']</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Мы готовы создавать мешки слов разными способами. </p> <h4 class="wp-block-heading" id="24-sposob-1-uslovie-if-else">Способ 1. Условие if-else</h4> <p>Начнем с простых <strong>условий if-else</strong>.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314cfa390169930" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cfa390169930-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cfa390169930-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cfa390169930-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cfa390169930-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cfa390169930-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cfa390169930-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cfa390169930-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cfa390169930-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cfa390169930-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cfa390169930-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cfa390169930-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cfa390169930-12">12</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cfa390169930-13">13</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cfa390169930-14">14</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cfa390169930-15">15</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cfa390169930-16">16</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cfa390169930-17">17</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cfa390169930-18">18</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cfa390169930-19">19</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314cfa390169930-20">20</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cfa390169930-21">21</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cfa390169930-1"><span class="crayon-c"># создадим пустой словарь для мешка слов bow</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cfa390169930-2"><span class="crayon-v">bow_1</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">{</span><span class="crayon-sy">}</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cfa390169930-3"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cfa390169930-4"><span class="crayon-c"># пройдемся по словам текста</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cfa390169930-5"><span class="crayon-st">for</span><span class="crayon-h"> </span><span class="crayon-e">word </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-v">words</span><span class="crayon-o">:</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cfa390169930-6"> </div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cfa390169930-7"><span class="crayon-h"> </span><span class="crayon-c"># если нам встретилось слово, которое уже есть в словаре</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cfa390169930-8"><span class="crayon-h"> </span><span class="crayon-st">if</span><span class="crayon-h"> </span><span class="crayon-e">word </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-v">bow_1</span><span class="crayon-o">:</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cfa390169930-9"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cfa390169930-10"><span class="crayon-h"> </span><span class="crayon-c"># увеличим его значение (частоту) на 1</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cfa390169930-11"><span class="crayon-h"> </span><span class="crayon-v">bow_1</span><span class="crayon-sy">[</span><span class="crayon-v">word</span><span class="crayon-sy">]</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">bow_1</span><span class="crayon-sy">[</span><span class="crayon-v">word</span><span class="crayon-sy">]</span><span class="crayon-h"> </span><span class="crayon-o">+</span><span class="crayon-h"> </span><span class="crayon-cn">1</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cfa390169930-12"> </div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cfa390169930-13"><span class="crayon-h"> </span><span class="crayon-c"># в противном случае, если слово встречается впервые</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cfa390169930-14"><span class="crayon-h"> </span><span class="crayon-st">else</span><span class="crayon-o">:</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cfa390169930-15"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cfa390169930-16"><span class="crayon-h"> </span><span class="crayon-c"># зададим ему значение 1</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cfa390169930-17"><span class="crayon-h"> </span><span class="crayon-v">bow_1</span><span class="crayon-sy">[</span><span class="crayon-v">word</span><span class="crayon-sy">]</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">1</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cfa390169930-18"> </div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cfa390169930-19"><span class="crayon-c"># отсортируем словарь по значению в убываюем порядке (reverse = True)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314cfa390169930-20"><span class="crayon-c"># и выведем шесть наиболее частотных слов</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cfa390169930-21"><span class="crayon-k ">sorted</span><span class="crayon-sy">(</span><span class="crayon-v">bow_1</span><span class="crayon-sy">.</span><span class="crayon-e">items</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">key</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-r">lambda</span><span class="crayon-h"> </span><span class="crayon-v">x</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-v">x</span><span class="crayon-sy">[</span><span class="crayon-cn">1</span><span class="crayon-sy">]</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">reverse</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-t">True</span><span class="crayon-sy">)</span><span class="crayon-sy">[</span><span class="crayon-o">:</span><span class="crayon-cn">6</span><span class="crayon-sy">]</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0006 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314cfe750339427" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314cfe750339427-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314cfe750339427-1">[('the', 4), ('we', 3), ('in', 3), ('a', 2), ('art', 2), ('museum', 2)]</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <h4 class="wp-block-heading" id="25-sposob-2-metod-get">Способ 2. Метод .get()</h4> <p>Помимо этого мы можем использовать <strong>метод .get()</strong>.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d02263546523" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d02263546523-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d02263546523-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d02263546523-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d02263546523-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d02263546523-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d02263546523-6">6</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d02263546523-1"><span class="crayon-v">bow_2</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">{</span><span class="crayon-sy">}</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d02263546523-2"> </div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d02263546523-3"><span class="crayon-st">for</span><span class="crayon-h"> </span><span class="crayon-e">word </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-v">words</span><span class="crayon-o">:</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d02263546523-4"><span class="crayon-h"> </span><span class="crayon-v">bow_2</span><span class="crayon-sy">[</span><span class="crayon-v">word</span><span class="crayon-sy">]</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">bow_2</span><span class="crayon-sy">.</span><span class="crayon-e">get</span><span class="crayon-sy">(</span><span class="crayon-v">word</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">0</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-o">+</span><span class="crayon-h"> </span><span class="crayon-cn">1</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d02263546523-5"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d02263546523-6"><span class="crayon-k ">sorted</span><span class="crayon-sy">(</span><span class="crayon-v">bow_2</span><span class="crayon-sy">.</span><span class="crayon-e">items</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">key</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-r">lambda</span><span class="crayon-h"> </span><span class="crayon-v">x</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-v">x</span><span class="crayon-sy">[</span><span class="crayon-cn">1</span><span class="crayon-sy">]</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">reverse</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-t">True</span><span class="crayon-sy">)</span><span class="crayon-sy">[</span><span class="crayon-o">:</span><span class="crayon-cn">6</span><span class="crayon-sy">]</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0004 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d05557996276" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d05557996276-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d05557996276-1">[('the', 4), ('we', 3), ('in', 3), ('a', 2), ('art', 2), ('museum', 2)]</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Поясню приведенный код. Метод <strong>.get()</strong> проверит наличие ключа (слова) в словаре и, если его нет, выведет 0.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d08667275012" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d08667275012-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d08667275012-1"><span class="crayon-v">bow_2</span><span class="crayon-sy">.</span><span class="crayon-e">get</span><span class="crayon-sy">(</span><span class="crayon-v">word</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">0</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <p>Далее мы прибавим к нулю единицу (потому что слово встретилось первый раз) и запишем это слово в наш словарь.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d09509289923" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d09509289923-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d09509289923-1"><span class="crayon-v">bow_2</span><span class="crayon-sy">[</span><span class="crayon-v">word</span><span class="crayon-sy">]</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">bow_2</span><span class="crayon-sy">.</span><span class="crayon-e">get</span><span class="crayon-sy">(</span><span class="crayon-v">word</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">0</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-o">+</span><span class="crayon-h"> </span><span class="crayon-cn">1</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <p>Если такой ключ (слово) уже есть, метод <strong>.get()</strong> выведет его значение (частоту слова) и мы просто увеличим это значение на один.</p> <h4 class="wp-block-heading" id="26-sposob-3-klass-counter-modulya-collections">Способ 3. Класс Counter модуля collections</h4> <p>Напомню, что этот же функционал реализован в классе Counter модуля collections.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d0b428868845" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d0b428868845-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d0b428868845-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d0b428868845-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d0b428868845-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d0b428868845-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d0b428868845-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d0b428868845-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d0b428868845-8">8</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d0b428868845-1"><span class="crayon-c"># импортируем класс Counter</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d0b428868845-2"><span class="crayon-st">from</span><span class="crayon-h"> </span><span class="crayon-k ">collections</span><span class="crayon-h"> </span><span class="crayon-r">import</span><span class="crayon-h"> </span><span class="crayon-i">Counter</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d0b428868845-3"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d0b428868845-4"><span class="crayon-c"># создадим объект этого класса, передав ему список слов</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d0b428868845-5"><span class="crayon-v">bow_3</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-e">Counter</span><span class="crayon-sy">(</span><span class="crayon-v">words</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d0b428868845-6"> </div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d0b428868845-7"><span class="crayon-c"># выведем шесть наиболее часто встречающихся слов с помощью метода .most_common()</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d0b428868845-8"><span class="crayon-v">bow_3</span><span class="crayon-sy">.</span><span class="crayon-e">most_common</span><span class="crayon-sy">(</span><span class="crayon-cn">6</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d0d984004309" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d0d984004309-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d0d984004309-1">[('the', 4), ('we', 3), ('in', 3), ('a', 2), ('art', 2), ('museum', 2)]</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p><strong>Результат</strong>. Обратите внимание, в отличие от мешка слов, который мы создавали на занятии по <a href="https://www.dmitrymakarov.ru/intro/topic-identification-19/">обработке естественного языка</a>, в число наиболее популярных слов вошли артикли, предлоги и союзы. Они не несут полезной информации о содержании текста. Это так называемые стоп-слова. Кроме того, мы не провели лемматизацию, и поэтому museum и museums считаются разными словами.</p> <p>На этом мы завершаем наше занятие, полученных знаний должно быть достаточно для дальнейшей работы.</p> <h2 class="wp-block-heading" id="27-podvedem-itog">Подведем итог</h2> <p>Сегодня мы подробно рассмотрели, что собой представляет словарь в Питоне.</p> <p>Мы изучили структуры словаря, основные операции со словарями, использование dict comprehension, а также рассмотрели ряд дополнительных примеров. В частности, мы узнали про возможность создания словаря с помощью <strong>lambda-функции</strong>, а также функции <strong>map()</strong> и <strong>zip()</strong>, вложенные словари и несколько способов подсчета частоты слов в заданном тексте.</p> <h3 class="wp-block-heading" id="28-voprosy-dlya-zakrepleniya">Вопросы для закрепления</h3> <p class="has-black-color has-text-color has-background" style="background-color:#ffe8c4">Вопрос. Есть ли индекс у элементов словаря в Питоне?</p> <div class="wp-block-ub-content-toggle" id="ub-content-toggle-197b8316-243e-4f24-9adf-2af4b8a1097d" data-mobilecollapse="true" data-desktopcollapse="true"> <div class="wp-block-ub-content-toggle-accordion" id="ub-content-toggle-panel-block-95c5b613-064f-4f37-9f74-dac4f4e31f7b"> <div class="wp-block-ub-content-toggle-accordion-title-wrap"" aria-controls="ub-content-toggle-panel-0-197b8316-243e-4f24-9adf-2af4b8a1097d" tabindex="0"> <p class="wp-block-ub-content-toggle-accordion-title ub-content-toggle-title-197b8316-243e-4f24-9adf-2af4b8a1097d">Посмотреть правильный ответ</p><div class="wp-block-ub-content-toggle-accordion-toggle-wrap left"><span class="wp-block-ub-content-toggle-accordion-state-indicator wp-block-ub-math-plus"></span> </div></div><div role="region" aria-expanded="false" class="wp-block-ub-content-toggle-accordion-content-wrap ub-hide" id="ub-content-toggle-panel-0-197b8316-243e-4f24-9adf-2af4b8a1097d"> <p>Ответ: нет, элементы словаря в Питоне не упорядочены, и у них отсутствует индекс. Доступ к элементам словаря осуществляется по ключу.</p> </div></div> </div> <p class="has-black-color has-text-color has-background" style="background-color:#ffe8c4">Вопрос. С помощью какого метода можно соединить два словаря в один?</p> <div class="wp-block-ub-content-toggle" id="ub-content-toggle-0ddb0702-ea4d-4b38-b296-dfcc55f6bcb5" data-mobilecollapse="true" data-desktopcollapse="true"> <div class="wp-block-ub-content-toggle-accordion" id="ub-content-toggle-panel-block-c948c189-0acc-44e4-b725-272afa665fad"> <div class="wp-block-ub-content-toggle-accordion-title-wrap"" aria-controls="ub-content-toggle-panel-0-0ddb0702-ea4d-4b38-b296-dfcc55f6bcb5" tabindex="0"> <p class="wp-block-ub-content-toggle-accordion-title ub-content-toggle-title-0ddb0702-ea4d-4b38-b296-dfcc55f6bcb5">Посмотреть правильный ответ</p><div class="wp-block-ub-content-toggle-accordion-toggle-wrap left"><span class="wp-block-ub-content-toggle-accordion-state-indicator wp-block-ub-math-plus"></span> </div></div><div role="region" aria-expanded="false" class="wp-block-ub-content-toggle-accordion-content-wrap ub-hide" id="ub-content-toggle-panel-0-0ddb0702-ea4d-4b38-b296-dfcc55f6bcb5"> <p>Ответ: для этого подойдет метод <strong>.update()</strong>.</p> </div></div> </div> <p class="has-black-color has-text-color has-background" style="background-color:#ffe8c4">Вопрос. Почему при копировании объекта в Питоне лучше использовать метод <strong>.copy()</strong>?</p> <div class="wp-block-ub-content-toggle" id="ub-content-toggle-9623b22c-0549-477e-a614-ff97f6ac3770" data-mobilecollapse="true" data-desktopcollapse="true"> <div class="wp-block-ub-content-toggle-accordion" id="ub-content-toggle-panel-block-de3aef64-a561-4e1d-bf42-a5bebb1c91f0"> <div class="wp-block-ub-content-toggle-accordion-title-wrap"" aria-controls="ub-content-toggle-panel-0-9623b22c-0549-477e-a614-ff97f6ac3770" tabindex="0"> <p class="wp-block-ub-content-toggle-accordion-title ub-content-toggle-title-9623b22c-0549-477e-a614-ff97f6ac3770">Посмотреть правильный ответ</p><div class="wp-block-ub-content-toggle-accordion-toggle-wrap left"><span class="wp-block-ub-content-toggle-accordion-state-indicator wp-block-ub-math-plus"></span> </div></div><div role="region" aria-expanded="false" class="wp-block-ub-content-toggle-accordion-content-wrap ub-hide" id="ub-content-toggle-panel-0-9623b22c-0549-477e-a614-ff97f6ac3770"> <p>Ответ: если для копирования использовать оператор присваивания <span id="urvanov-syntax-highlighter-672da51314d1f938138209" class="urvanov-syntax-highlighter-syntax urvanov-syntax-highlighter-syntax-inline crayon-theme-familiar-my-copy crayon-theme-familiar-my-copy-inline urvanov-syntax-highlighter-font-consolas" style="font-size: 16px !important; line-height: 22px !important;font-size: 16px !important;"><span class="crayon-pre urvanov-syntax-highlighter-code" style="font-size: 16px !important; line-height: 22px !important;font-size: 16px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><span class="crayon-o">=</span></span></span>, то при изменении нового объекта изменится и исходный. Это происходит потому, что новая переменная лишь ссылается на объект, содержащийся в исходной переменной.</p> </div></div> </div> <p>В следующий раз мы поговорим про <a href="https://www.dmitrymakarov.ru/python/numpy-09/">массив Numpy</a>.</p> <div id="ub_divider_f073c425-6d82-4784-82e9-b647492fc654" class="wp-block-ub-divider ub-divider-orientation-horizontal"><hr class="ub_divider" ></hr></div> <h3 class="wp-block-heading" id="29-otvety-na-voprosy">Ответы на вопросы</h3> <p><strong>Вопрос</strong>. А что будет, если в словаре есть одинаковые ключи?</p> <p><strong>Ответ</strong>. Давайте посмотрим на примере. При создании словаря с одинаковыми ключами:</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d27345078645" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d27345078645-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d27345078645-1"><span class="crayon-sy">{</span><span class="crayon-s">'k1'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">1</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'k1'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">2</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'k1'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-sy">}</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <p>Питон выведет:</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d2e650047927" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d2e650047927-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d2e650047927-1">{'k1': 3}</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Как мы видим, Питон оставил только последний элемент из серии одинаковых ключей. Ошибки при этом не возникает.</p> <div id="ub_divider_44f987f2-08af-4e26-9447-5cd65312d3b2" class="wp-block-ub-divider ub-divider-orientation-horizontal"><hr class="ub_divider" ></hr></div> <p><strong>Вопрос</strong>. Словарь — это изменяемый или неизменяемый тип данных в Питоне?</p> <p><strong>Ответ</strong>. Большое спасибо за отличный вопрос. Давайте в целом разберем, какие типы данных в Питоне считаются <em>изменяемыми</em> (mutable), а какие <em>неизменяемыми</em> (immutable).</p> <p>Весь код на Питоне представляет собой объекты либо отношения между ними. У каждого объекта есть <em>identity</em> (адрес объекта в памяти компьютера), <em>type</em> (тип) и <em>value</em> (значение).</p> <p>Создадим строковый объект и посмотрим на identity, type и value.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d36756971615" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d36756971615-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d36756971615-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d36756971615-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d36756971615-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d36756971615-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d36756971615-6">6</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d36756971615-1"><span class="crayon-c"># создадим объект</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d36756971615-2"><span class="crayon-k ">string</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-s">'Python'</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d36756971615-3"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d36756971615-4"><span class="crayon-c"># посмотрим на identity, type и value</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d36756971615-5"><span class="crayon-c"># функция id() выводит адрес объекта в памяти компьютера</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d36756971615-6"><span class="crayon-k ">id</span><span class="crayon-sy">(</span><span class="crayon-k ">string</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-k ">type</span><span class="crayon-sy">(</span><span class="crayon-k ">string</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-k ">string</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d3d759418467" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d3d759418467-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d3d759418467-1">(140324781601584, str, 'Python')</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Теперь попробуем изменить этот объект.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d43004529875" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d43004529875-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d43004529875-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d43004529875-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d43004529875-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d43004529875-5">5</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d43004529875-1"><span class="crayon-c"># расширим наше представление о Питоне</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d43004529875-2"><span class="crayon-k ">string</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-k ">string</span><span class="crayon-h"> </span><span class="crayon-o">+</span><span class="crayon-h"> </span><span class="crayon-s">' is cool'</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d43004529875-3"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d43004529875-4"><span class="crayon-c"># посмотрим на identity, type и value</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d43004529875-5"><span class="crayon-k ">id</span><span class="crayon-sy">(</span><span class="crayon-k ">string</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-k ">type</span><span class="crayon-sy">(</span><span class="crayon-k ">string</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-k ">string</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d4a500046117" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d4a500046117-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d4a500046117-1">(140324510145712, str, 'Python is cool')</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p class="has-background" style="background-color:#ffe8c4">Как вы видите, адрес объекта в памяти изменился, а значит это уже другой объект и тип str относится к <em>неизменяемым</em> типам данных.</p> <p>Теперь возьмем список, выведем его identity, type и value, добавим в этот список новый элемент и посмотрим как изменятся его свойства.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d51635777279" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d51635777279-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d51635777279-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d51635777279-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d51635777279-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d51635777279-5">5</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d51635777279-1"><span class="crayon-c"># создадим список</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d51635777279-2"><span class="crayon-v">lst</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">[</span><span class="crayon-cn">1</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">2</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-sy">]</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d51635777279-3"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d51635777279-4"><span class="crayon-c"># посмотрим на identity, type и value</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d51635777279-5"><span class="crayon-k ">id</span><span class="crayon-sy">(</span><span class="crayon-v">lst</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-k ">type</span><span class="crayon-sy">(</span><span class="crayon-v">lst</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">lst</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d57960749173" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d57960749173-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d57960749173-1">(140324385431872, list, [1, 2, 3])</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d59520666168" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d59520666168-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d59520666168-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d59520666168-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d59520666168-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d59520666168-5">5</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d59520666168-1"><span class="crayon-c"># добавим элемент в список</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d59520666168-2"><span class="crayon-v">lst</span><span class="crayon-sy">.</span><span class="crayon-e">append</span><span class="crayon-sy">(</span><span class="crayon-cn">4</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d59520666168-3"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d59520666168-4"><span class="crayon-c"># снова выведем identity, type и value</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d59520666168-5"><span class="crayon-k ">id</span><span class="crayon-sy">(</span><span class="crayon-v">lst</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-k ">type</span><span class="crayon-sy">(</span><span class="crayon-v">lst</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">lst</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d5b093919642" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d5b093919642-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d5b093919642-1">(140324385431872, list, [1, 2, 3, 4])</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Список пополнился новым элементом, при этом оставшись в той же ячейке памяти. Это изменяемый тип данных.</p> <ul class="wp-block-list"> <li>В целом к <strong>изменяемым типам данных</strong> относятся: список, словарь, множество и созданные пользователем <a href="https://www.dmitrymakarov.ru/python/oop-12/">классы</a></li> <li><strong>Неизменяемые типы данных</strong>: int, float, bool, str, tuple и range.</li> </ul> <p>Теперь посмотрим как свойство изменяемости и неизменяемости влияет на <strong>копирование объектов</strong>. Начнем со строки.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d5d171847751" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d5d171847751-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d5d171847751-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d5d171847751-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d5d171847751-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d5d171847751-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d5d171847751-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d5d171847751-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d5d171847751-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d5d171847751-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d5d171847751-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d5d171847751-11">11</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d5d171847751-1"><span class="crayon-c"># вновь создадим строку</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d5d171847751-2"><span class="crayon-k ">string</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-s">'Python'</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d5d171847751-3"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d5d171847751-4"><span class="crayon-c"># скопируем через присваивание</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d5d171847751-5"><span class="crayon-v">string2</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-k ">string</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d5d171847751-6"> </div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d5d171847751-7"><span class="crayon-c"># изменим копию</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d5d171847751-8"><span class="crayon-v">string2</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">string2</span><span class="crayon-h"> </span><span class="crayon-o">+</span><span class="crayon-h"> </span><span class="crayon-s">' is cool'</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d5d171847751-9"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d5d171847751-10"><span class="crayon-c"># посмотрим на результат</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d5d171847751-11"><span class="crayon-k ">string</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">string2</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d5f436559282" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d5f436559282-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d5f436559282-1">('Python', 'Python is cool')</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Благодаря тому, что при изменении строки был создан новый объект, копирование прошло успешно (исходная строка при изменении копии не была затронута). Тот факт, что мы имеем дело с разными объектами можно также проверить через <strong>оператор is</strong>.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d61858515658" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d61858515658-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d61858515658-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d61858515658-3">3</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d61858515658-1"><span class="crayon-c"># оператор == сравнивает значения (values)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d61858515658-2"><span class="crayon-c"># оператор is сравнивает identities</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d61858515658-3"><span class="crayon-k ">string</span><span class="crayon-h"> </span><span class="crayon-o">==</span><span class="crayon-h"> </span><span class="crayon-v">string2</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-k ">string</span><span class="crayon-h"> </span><span class="crayon-st">is</span><span class="crayon-h"> </span><span class="crayon-v">string2</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d63807090678" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d63807090678-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d63807090678-1">(False, False)</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Посмотрим, что будет со списком.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d65420441691" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d65420441691-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d65420441691-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d65420441691-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d65420441691-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d65420441691-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d65420441691-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d65420441691-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d65420441691-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d65420441691-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d65420441691-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d65420441691-11">11</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d65420441691-1"><span class="crayon-c"># создадим список</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d65420441691-2"><span class="crayon-v">lst</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">[</span><span class="crayon-cn">1</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">2</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-sy">]</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d65420441691-3"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d65420441691-4"><span class="crayon-c"># скопируем его в новую переменную через присваивание</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d65420441691-5"><span class="crayon-v">lst2</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-i">lst</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d65420441691-6"> </div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d65420441691-7"><span class="crayon-c"># добавим новый элемент в скопированный список</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d65420441691-8"><span class="crayon-v">lst2</span><span class="crayon-sy">.</span><span class="crayon-e">append</span><span class="crayon-sy">(</span><span class="crayon-cn">4</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d65420441691-9"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d65420441691-10"><span class="crayon-c"># выведем исходный список и копию</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d65420441691-11"><span class="crayon-v">lst</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">lst2</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d67678611663" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d67678611663-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d67678611663-1">([1, 2, 3, 4], [1, 2, 3, 4])</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>В данном случае копирование через присваивание и последующее добавление новых элементов в список не создало новых объектов. По этой причине изменился как исходный объект, так и его копия.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d69855743500" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d69855743500-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d69855743500-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d69855743500-1"><span class="crayon-c"># убедимся, что речь идет об одном и том же объекте</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d69855743500-2"><span class="crayon-v">lst</span><span class="crayon-h"> </span><span class="crayon-o">==</span><span class="crayon-h"> </span><span class="crayon-v">lst2</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-e">lst </span><span class="crayon-st">is</span><span class="crayon-h"> </span><span class="crayon-v">lst2</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d6b534317399" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d6b534317399-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d6b534317399-1">(True, True)</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Как и в случае со словарем, необходимо использовать метод <strong>.copy()</strong>.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d6d262884341" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d6d262884341-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d6d262884341-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d6d262884341-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d6d262884341-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d6d262884341-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d6d262884341-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d6d262884341-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d6d262884341-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d6d262884341-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d6d262884341-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d6d262884341-11">11</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d6d262884341-1"><span class="crayon-c"># вновь создадим список</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d6d262884341-2"><span class="crayon-v">lst</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">[</span><span class="crayon-cn">1</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">2</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-sy">]</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d6d262884341-3"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d6d262884341-4"><span class="crayon-c"># скопируем с помощью метода .copy()</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d6d262884341-5"><span class="crayon-v">lst2</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">lst</span><span class="crayon-sy">.</span><span class="crayon-k ">copy</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d6d262884341-6"> </div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d6d262884341-7"><span class="crayon-c"># добавим новый элемент в скопированный список</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d6d262884341-8"><span class="crayon-v">lst2</span><span class="crayon-sy">.</span><span class="crayon-e">append</span><span class="crayon-sy">(</span><span class="crayon-cn">4</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d6d262884341-9"> </div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d6d262884341-10"><span class="crayon-c"># выведем исходный список и копию</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d6d262884341-11"><span class="crayon-v">lst</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">lst2</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d70032850284" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d70032850284-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d70032850284-1">([1, 2, 3], [1, 2, 3, 4])</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Теперь копирование прошло успешно. Прежде чем завершить, давайте добавим число четыре в исходный список и убедимся, что речь идет о разных объектах.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d72909818075" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d72909818075-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51314d72909818075-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d72909818075-3">3</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d72909818075-1"><span class="crayon-v">lst</span><span class="crayon-sy">.</span><span class="crayon-e">append</span><span class="crayon-sy">(</span><span class="crayon-cn">4</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51314d72909818075-2"> </div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d72909818075-3"><span class="crayon-v">lst</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">lst2</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">lst</span><span class="crayon-h"> </span><span class="crayon-o">==</span><span class="crayon-h"> </span><span class="crayon-v">lst2</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-e">lst </span><span class="crayon-st">is</span><span class="crayon-h"> </span><span class="crayon-v">lst2</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51314d74828814355" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51314d74828814355-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51314d74828814355-1">([1, 2, 3, 4], [1, 2, 3, 4], True, False)</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Значения списков совпадают, а вот их адреса — нет.</p> </div> <!-- .content --> </div> <!-- .post --> <footer class="site-footer section-inner"> <!--<p class="copyright">© 2024 <a href="https://www.dmitrymakarov.ru" class="site-name">Машинное обучение</a></p>--> </footer> <!-- footer --> </main> <script type="text/javascript" src="//cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml.js?ver=6.6.2" id="mathjax-js"></script> <script type="text/javascript" src="https://www.dmitrymakarov.ru/wp-content/plugins/ultimate-blocks/src/blocks/content-toggle/front.build.js?ver=3.2.2" id="ultimate_blocks-content-toggle-front-script-js"></script> <script type="text/javascript" src="https://www.dmitrymakarov.ru/wp-content/plugins/ultimate-blocks/src/blocks/table-of-contents/front.build.js?ver=3.2.2" id="ultimate_blocks-table-of-contents-front-script-js"></script> <script type="text/javascript" src="https://www.dmitrymakarov.ru/wp-includes/js/imagesloaded.min.js?ver=5.0.0" id="imagesloaded-js"></script> <script type="text/javascript" src="https://www.dmitrymakarov.ru/wp-includes/js/masonry.min.js?ver=4.2.2" id="masonry-js"></script> <script type="text/javascript" id="mcluhan_global-js-extra"> /* <![CDATA[ */ var mcluhan_ajaxpagination = {"ajaxurl":"https:\/\/www.dmitrymakarov.ru\/wp-admin\/admin-ajax.php","query_vars":"{\"page\":\"\",\"pagename\":\"python\\\/dict-08\"}"}; /* ]]> */ </script> <script type="text/javascript" src="https://www.dmitrymakarov.ru/wp-content/themes/mcluhan/assets/js/global.js?ver=2.1.1" id="mcluhan_global-js"></script> </body> </html>