Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.79/75: Рейтинг темы: голосов - 75, средняя оценка - 4.79
0 / 0 / 0
Регистрация: 05.06.2018
Сообщений: 7

Перебор ключей в словаре

08.09.2019, 21:47. Показов 14450. Ответов 27
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Приступил к изучению питона, сейчас полно всяких бесплатных курсов и вот проходя один из них, выполняю очередное задание. В задании нужно выполнить переборе ключей в словаре, перебираю ключи и вывожу на печать:

Python
1
2
3
4
5
6
7
8
9
10
friends = {
    'Серёга': 'Омск', 
    'Соня': 'Москва', 
    'Дима': 'Челябинск', 
    'Алина': 'Хабаровск', 
    'Егор': 'Пермь'
}
 
for name in friends:
    print(name)
а можно так:

Python
1
2
for name in friends.keys():
    print(name)
Результат не меняется, тогда в чем разница и как правильней?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
08.09.2019, 21:47
Ответы с готовыми решениями:

Перебор ключей по значению в словаре
Как можно перебрать значения словаря, чтобы получить ключи? К примеру в словаре A при вводе пользователем "1 2 3" на экран...

Хранение ключей и значений в словаре
Мне нужно в словарь записать пары ключ и значение. Но в ключах есть одинаковые значения и программой затирается предыдущее значение, а...

Подсчитать количество ключей в словаре
Пусть дан словарь. Посчитайте и выведите сколько в словаре ключей.

27
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7391 / 4818 / 1246
Регистрация: 30.03.2015
Сообщений: 13,687
Записей в блоге: 29
10.09.2019, 13:33
Студворк — интернет-сервис помощи студентам
gor242, странный ты однако, заюзал сет, а потом спрашиваешь литературу -так открой в документации сет, почитай что это и зачем...
0
1732 / 970 / 199
Регистрация: 22.02.2018
Сообщений: 2,693
Записей в блоге: 6
10.09.2019, 13:46
gor242, Кстати, научитесь правильно выкладывать свой код на этом форуме.
Для этого в шапке сообщения выбирайте кнопку PYTHON (на ней выскакивает сообщение "Выделить код Pyton") и туда, между тегами, вставляйте свой код.
1
0 / 0 / 0
Регистрация: 05.06.2018
Сообщений: 7
10.09.2019, 17:57  [ТС]
Цитата Сообщение от Welemir1 Посмотреть сообщение
gor242, странный ты однако, заюзал сет, а потом спрашиваешь литературу -так открой в документации сет, почитай что это и зачем...
Я же начинающий, я же не могу делать сразу правильно. А вообще странный это да, я вдруг после 34 лет решил стать программистом, так что не пинайте сильно.
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7391 / 4818 / 1246
Регистрация: 30.03.2015
Сообщений: 13,687
Записей в блоге: 29
10.09.2019, 18:32
Цитата Сообщение от gor242 Посмотреть сообщение
я вдруг после 34 лет решил стать программистом
это как раз норм, странно идти за таким(сет) на форум, я ж тебе выше писал -консоль+доки+чтение книг по пайтон
1
 Аватар для Semen-Semenich
5226 / 3472 / 1174
Регистрация: 21.03.2016
Сообщений: 8,299
10.09.2019, 18:49
Цитата Сообщение от gor242 Посмотреть сообщение
вдруг после 34 лет решил стать программистом, так что не пинайте сильно
странно действительно. я в 47 увлекся питоном но прежде чем задать вопросы стараюсь прочитать литературу по данному вопросу. кстати судя по инфе в питоне 3.6 и выше словари уже упорядоченны
1
1732 / 970 / 199
Регистрация: 22.02.2018
Сообщений: 2,693
Записей в блоге: 6
10.09.2019, 21:51
Цитата Сообщение от Semen-Semenich Посмотреть сообщение
кстати судя по инфе в питоне 3.6 и выше словари уже упорядоченны
Что Вы понимаете под упорядоченностью? В списках под порядочностью понимается привязка элементов к положению (индексу) в списке, это и называется упорядоченной последовательностью, подклассом которой является список. А что тогда есть упорядоченность в словаре? Что, ключи жестко, как в списке, привязали к положению (индексу). Или под упорядочиванием Вы понимаете что то другое?
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
10.09.2019, 22:46
Цитата Сообщение от Semen-Semenich Посмотреть сообщение
судя по инфе в питоне 3.6 и выше словари уже упорядоченны
(порядок обхода ==порядку вставки)
Это так, но это тоже в некотором роде случайность :-). Побочный эффект называемый деталью реализации, который вовсе не задумывался разработчиками.
В других языках хэш структуры, как правило, порядок вставки не соблюдают (за исключением специальных вариантов таких структур) и поэтому полагаться на такого рода упорядоченность, даже если она вдруг внезапно проявилась, не стоит, поскольку она версионнозависима. К тому же, в Python есть специальный тип OrderedDict, где данная упорядоченность заявлена именно как часть функционала и поэтому документирована. И вот здесь как раз полагаться на нее можно.
1
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7391 / 4818 / 1246
Регистрация: 30.03.2015
Сообщений: 13,687
Записей в блоге: 29
11.09.2019, 06:01
Цитата Сообщение от Viktorrus Посмотреть сообщение
Или под упорядочиванием Вы понимаете что то другое?
в каком порядке положил в таком и достанешь. Но как выше верно заметили, для таких случаев лучше выбрать OrderedDict, так мы явно показываем, что нам нужен порядок и мы на него рассчитываем. Явное лучше неявного
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
11.09.2019, 06:01
Помогаю со студенческими работами здесь

Как выдрать последние 10 ключей в словаре
Подскажите пожалуйста! Есть словарь(в нем есть число(1-80), и сколько раз оно повторяется) {6: 26, 8: 20, 9: 20, 21: 33, 24: 27, 25:...

Отображение ключей в словаре как чисел в двоичном формате
Здравствуйте! Я разыгрываю генератор, который выдает некие значения в двоичном представлении по порядку, отличающиеся друг от друга, но...

Создать словарь, значения ключей которого будут суммироваться при повторении ключей
Нужна помощь в решении задачи, есть словарь, вводятся значения, и их нужно поместить в этот словарь, но так, что если какой то из ключей...

Подсчет ключей в словаре и сортировка
Здравствуйте! Написал вот такой код: from collections import defaultdict import datetime # просто, чтобы желтым вызовы модуля...

Перебор ключей в INI-файлах
Приветствую, ребята. Подскажите пожалуйста, как перебрать ключи из определенной секции ini-файла ?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
28
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru