Метод items() у словаря в Python возвращает специальный объект представления — dict_items. Этот объект содержит все пары ключ–значение, которые находятся в словаре на момент вызова метода. Главное, что стоит понимать — это не копия данных, а динамическое отображение текущего состояния словаря.
➡️ То есть, если после вызова items() словарь изменится (например, будут добавлены новые элементы или удалены существующие), это сразу отразится и на объекте items().
Это поведение делает items() очень удобным для просмотра и итерации по словарю, но важно помнить об осторожности при изменении словаря во время обхода — это может вызвать RuntimeError, так как структура данных меняется в процессе итерации.
Также объекты, возвращаемые items(), поддерживают несколько стандартных операций: ➡️iter(d.items()) — можно получить итератор по парам ключ-значение ➡️len(d.items()) — вернёт общее число пар в словаре ➡️(k, v) in d.items() — позволяет проверить, содержится ли конкретная пара ключ-значение в словаре
🌸 В Python 2.7 аналогичную функцию выполняет метод viewitems(), но начиная с Python 3, items() уже по умолчанию возвращает объект-представление.
Метод items() у словаря в Python возвращает специальный объект представления — dict_items. Этот объект содержит все пары ключ–значение, которые находятся в словаре на момент вызова метода. Главное, что стоит понимать — это не копия данных, а динамическое отображение текущего состояния словаря.
➡️ То есть, если после вызова items() словарь изменится (например, будут добавлены новые элементы или удалены существующие), это сразу отразится и на объекте items().
Это поведение делает items() очень удобным для просмотра и итерации по словарю, но важно помнить об осторожности при изменении словаря во время обхода — это может вызвать RuntimeError, так как структура данных меняется в процессе итерации.
Также объекты, возвращаемые items(), поддерживают несколько стандартных операций: ➡️iter(d.items()) — можно получить итератор по парам ключ-значение ➡️len(d.items()) — вернёт общее число пар в словаре ➡️(k, v) in d.items() — позволяет проверить, содержится ли конкретная пара ключ-значение в словаре
🌸 В Python 2.7 аналогичную функцию выполняет метод viewitems(), но начиная с Python 3, items() уже по умолчанию возвращает объект-представление.
Telegram and Signal Havens for Right-Wing Extremists
Since the violent storming of Capitol Hill and subsequent ban of former U.S. President Donald Trump from Facebook and Twitter, the removal of Parler from Amazon’s servers, and the de-platforming of incendiary right-wing content, messaging services Telegram and Signal have seen a deluge of new users. In January alone, Telegram reported 90 million new accounts. Its founder, Pavel Durov, described this as “the largest digital migration in human history.” Signal reportedly doubled its user base to 40 million people and became the most downloaded app in 70 countries. The two services rely on encryption to protect the privacy of user communication, which has made them popular with protesters seeking to conceal their identities against repressive governments in places like Belarus, Hong Kong, and Iran. But the same encryption technology has also made them a favored communication tool for criminals and terrorist groups, including al Qaeda and the Islamic State.
Among the actives, Ascendas REIT sank 0.64 percent, while CapitaLand Integrated Commercial Trust plummeted 1.42 percent, City Developments plunged 1.12 percent, Dairy Farm International tumbled 0.86 percent, DBS Group skidded 0.68 percent, Genting Singapore retreated 0.67 percent, Hongkong Land climbed 1.30 percent, Mapletree Commercial Trust lost 0.47 percent, Mapletree Logistics Trust tanked 0.95 percent, Oversea-Chinese Banking Corporation dropped 0.61 percent, SATS rose 0.24 percent, SembCorp Industries shed 0.54 percent, Singapore Airlines surrendered 0.79 percent, Singapore Exchange slid 0.30 percent, Singapore Press Holdings declined 1.03 percent, Singapore Technologies Engineering dipped 0.26 percent, SingTel advanced 0.81 percent, United Overseas Bank fell 0.39 percent, Wilmar International eased 0.24 percent, Yangzijiang Shipbuilding jumped 1.42 percent and Keppel Corp, Thai Beverage, CapitaLand and Comfort DelGro were unchanged.