С Новым годом! Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.59/34: Рейтинг темы: голосов - 34, средняя оценка - 4.59
1 / 1 / 1
Регистрация: 23.04.2014
Сообщений: 647

Почему в цикле используются квадратные скобки при присвоении словаря?

22.10.2018, 18:01. Показов 6622. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Python
1
2
3
4
5
6
7
>>> dict = {}
>>> list = []
>>> for x in range(0,100):
...     dict[1] = x
...     list.append(dict)
... 
>>> print list
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.10.2018, 18:01
Ответы с готовыми решениями:

Bash: когда используются круглые, а когда - квадратные скобки?
привет всем помогите разобраться не могу понять использование круглыс скобок и квадратных в bash. да , уже гуглил, и если бы понял,...

Почему все после оператора присвоения взято в квадратные скобки?
li = new_li = print(new_li) new_li = print (new_li) в строке 'new_li=' почему все после оператора присвоения взято...

Круглые и квадратные скобки при операторе new
Требуются помощь в использовании оператора new! И так для начала вопросы для понимания, что произойдет при выполнении 2-ух вариантов кода...

8
 Аватар для Semen-Semenich
5222 / 3469 / 1173
Регистрация: 21.03.2016
Сообщений: 8,295
22.10.2018, 19:47
ну во первых этот код бессмысленный так как в список вы добавляете объект словаря а в цикле вы меняете значение единственного ключа 1 на значения от 0 до 99 то есть последнее значение будет 99 а так как в списке один и тот же обьект то все элементы будут одинаковы то есть словарь с ключем 1 и последним значением 99. и не называйте переменные ключевыми словами. ну и по вопросу про скобки, обьект список это и есть набор элементов через запятую заключенные в квадратные скобки ну а list_ = [] задает переменной list_ значение пустого списка

Добавлено через 17 минут
чуть не внимательно прочитал. скобки используются для задания ключа словаря или извлечения элемента по ключу
Python
1
2
3
4
5
6
7
8
9
10
11
>>> dct = {}
>>> dct[1] = 1
>>> dct['y'] = 'y'*3
>>> dct['name'] = 'join'
>>> dct
{1: 1, 'y': 'yyy', 'name': 'join'}
>>> dct['name']
'join'
>>> dct['y']
'yyy'
>>>
0
1 / 1 / 1
Регистрация: 23.04.2014
Сообщений: 647
22.10.2018, 21:49  [ТС]
Semen-Semenich, я именно за пониманием смысла к вам и обращаюсь.
Тоесть можно присваивать как вы показали , можно нет.
Python
1
2
>>> dct[1] = 1
>>> dct['y'] = 'y'*3
Добавлено через 49 секунд
А можно вот так
Python
1
ip.update({'ip':s})
0
 Аватар для Semen-Semenich
5222 / 3469 / 1173
Регистрация: 21.03.2016
Сообщений: 8,295
23.10.2018, 16:17
Словари
DICT.UPDATE
0
1 / 1 / 1
Регистрация: 23.04.2014
Сообщений: 647
23.10.2018, 19:29  [ТС]
Semen-Semenich, а вот эту строку как я должен описать
Python
1
my_dict = {'key': 'value'}
что изначально я должен туда записать если действовать по тому шаблону который вы мне показали?
Python
1
2
3
my_dict = {'key': 'value'}
    my_dict.update({'another_key': 'another_value'})  # Дополняем.
    my_dict.update({'another_key': 'yet_another_value'})  # Обновляем.
0
 Аватар для Semen-Semenich
5222 / 3469 / 1173
Регистрация: 21.03.2016
Сообщений: 8,295
23.10.2018, 20:38
Python
1
2
3
4
5
6
7
8
9
10
>>> my_dict = {} # задаем пустой словарь
>>> my_dict
{}
>>> my_dict.update({'another_key': 'another_value'}) # добавляем ключ : значение
>>> my_dict
{'another_key': 'another_value'}
>>> my_dict.update({'another_key': 'yet_another_value'}) # изменяем значение ключа 'another_key'
>>> my_dict
{'another_key': 'yet_another_value'}
>>>
то же самое со скобками
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
>>> my_dict = {}
>>> my_dict
{}
>>> my_dict['another_key'] = 'another_value' # добавляем
>>> my_dict
{'another_key': 'another_value'}
>>> my_dict['another_key'] = 'yet_another_value' # изменяем
>>> my_dict
{'another_key': 'yet_another_value'}
>>> my_dict['key'] = 'value' # добавляем
>>> my_dict
{'another_key': 'yet_another_value', 'key': 'value'}
>>>
0
1 / 1 / 1
Регистрация: 23.04.2014
Сообщений: 647
23.10.2018, 21:20  [ТС]
Semen-Semenich, что в таком случае я неправильно делаю.
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
ip={} 
bad_ip = {}
for ip,val in rows.items():
      
      if len(val) > 1:
           bad_ip[ip]=len(val)
 
 
 
for i,s in bad_ip.items():
    if(s>=1000):
        
        ip.update({'ip':s})
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
23.10.2018, 22:55
Цитата Сообщение от saladdd Посмотреть сообщение
что в таком случае я неправильно делаю
Обвинение: Вы "убили" переменную ip объявленную как словарь.
Доказательство:
Code
1
2
    ip.update({'ip':s})
AttributeError: 'str' object has no attribute 'update'
Способ: использовали ее имя в цикле.
Вердикт:
Поскольку, согласно "законам" Python переменные цикла не являются локальными для тела цикла и перезатирают любые одноименные переменные, объявленные выше по коду, вышеозначенный код признать невалидным и приговорить к немедленному пожизненному рефакторингу.
1
1 / 1 / 1
Регистрация: 23.04.2014
Сообщений: 647
23.10.2018, 23:43  [ТС]
Garry Galler, спасибо извените невнимательно смотрел
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
23.10.2018, 23:43
Помогаю со студенческими работами здесь

LINQ. При выводе на консоль появляются квадратные скобки
Добрый день прошу помощи. При разработке Парсера на С# столкнулся с проблемой. А именно при выводе на консоль появляться...

Задание 1 Определить, корректно ли расставлены в строке круглые и квадратные скобки. Скобки могут быть вложенными. Входные данные: ab(h[b55](0123)jw(
помогите решить

Подскажите как убоать квадратные скобки в которые оборачивается массив при выводе в json файл
<?php // на какие данные рассчитан этот скрипт header("Content-Type: application/json; charset=utf-8"); // 1. Получаем данные от...

Почему запускается функция при присвоении значения свойству FormulaLocal?
Такая ситуация: в одной книге куча макросов и есть ещё функция. И мне нужно присвоить значение или формулу ячейке. Из всех способов,...

Почему конструктор вызывается при присвоении объекта другому объекту
оператор+ выполняется нормально, но когда уже переменная в sum, на след шаге она вызывает конструктор, ибо у меня в примере 9 выходит. А в...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит токи на L и напряжения на C в установ. режимах до и. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru