Найти в Дзене
Закреплено автором
Слово о ПК и PC, или Хроника рефлексирующего сисадмина
О воровстве контента нынешними владельцами сайта netler.ru
100 · 1 год назад
Почему у id(None) и id(print()) – один адрес, но id(print()) не равно None?
*** id(None) # 140705445104448 id(print()) # 140705445104448 id(print()) == None # False id(print()) is None # False Как видим, у id(None) и id(print()) – один адрес, но при этом id(print()) не равно None!.. Это одна из самых интересных и неочевидных особенностей языка Python, которая касается объекта None и его сравнения с другими объектами. *** 1) id(None) • В Python объект None является синглтоном (singleton). Это означает, что в рамках одного процесса (одной запущенной программы) существует только один-единственный экземпляр объекта None...
5 дней назад
Почему у id(print) и id(print()) – разные адреса?
*** id(print) # 1738991274000 id(print()) # 140705445104448 Что мы видим? Нечто странное: функция – print() – одна, а адреса – разные! Почему? Разные адреса, которые мы видим при вызове id(print) и id(print()), обусловлены фундаментальным различием между объектом и результатом его вызова. В языке Python всё является объектом: числа, строки, функции, классы. У каждого объекта есть уникальный идентификатор, который возвращает функция id(). *** 1. id(print) • Если мы введём в интерактивном...
5 дней назад
Вариации на тему «Hello, World!» в Python. Вариант 11. Используем функцию exec()
Продолжаем вариации на тему «Hello, World!» в Python. Следующие два примера (с разными вариантами оформления многострочной строки) демонстрируют работу встроенной функции exec() в языке Python. *** Функция exec() принимает строку, содержащую валидный Python-код, и выполняет этот код в текущем контексте (то есть в той же области видимости, где вызвана функция). Синтаксис выглядит так: exec(code_string) • code_string – это строка (тип str), внутри которой написан исполняемый код. *** exec(""" print('Hello,...
6 дней назад
Вариации на тему «Hello, World!» в Python. Вариант 10. Используем функцию eval()
Продолжаем вариации на тему «Hello, World!» в Python. *** eval("'Hello, World!'") *** Встроенная функция eval() в Python принимает строку и выполняет её как код на языке Python. Если передать ей строку, содержащую корректное выражение, она вычислит его и вернёт результат. • Если передать eval("2 + 2"), функция вернёт число 4. • Если передать eval("print('test')"), функция выполнит команду печати и выведет test. • Если передать просто текст (строковый литерал), функция вернёт этот текст без изменений...
1 неделю назад
AttributeError, или Досадная ошибка Пола Бэрри…
*** В книге Пола Бэрри «Изучаем программирование на Python» * (кстати, очень хорошая книга по Python!) приведён такой учебный пример (сс. 348 - 349): class CountFromBy: # Создаётся пустой класс pass a = CountFromBy() # Создаются объекты класса b = CountFromBy() с = CountFromBy() c # 0 c.increase() # Каждый вызов метода «increase» увеличивает значение счётчика на единицу c.increase() c.increase() # 3. После трёх вызовов метода «increase» счётчик равен трём *** Но ведь c выводит не 0, а <__main__...
1 неделю назад
Вариации на тему «Hello, World!» в Python. Вариант 9. Используем внешнюю библиотеку prettytable
Продолжаем вариации на тему «Hello, World!» в Python. *** from prettytable import PrettyTable table = PrettyTable() table.field_names = ["Hello, World!"] # или table.field_names = ['Hello, World!'] table.add_row(["Привет, Мир!"]) # или table.add_row(['Привет, Мир!']) print(table) *** 1. from prettytable import PrettyTable Эта строка импортирует класс PrettyTable из внешней библиотеки prettytable. Эта библиотека не входит в стандартную поставку Python, поэтому её нужно устанавливать отдельно (например, с помощью команды py -3 -m pip install prettytable)...
1 неделю назад
Проблема с отображением кодировки Unicode в интерактивном интерпретаторе Python
*** …Намедни для очередной статьи понадобилось мне в интерактивном интерпретаторе Python набрать следующий код: for line in open(r'C:\\Users\\Master\\Desktop\\тошиба.txt').readlines(): print(line.upper(), end='') Этот код открывает файл тошиба.txt, читает его содержимое построчно, переводит все символы в каждой строке в верхний регистр и выводит их на экран, сохраняя исходную структуру документа. • Цикл for вызывает файловый метод readlines() для загрузки содержимого файла в память в виде списка строк (он последовательно перебирает элементы списка, полученного от ...
2 недели назад
Яндекс.Переводчик: «Вы действительно будете смеяться!..»
*** …Яндекс.Переводчик давно хвалится, что "поддерживает" якутский язык. "Скормил" ему якутское стихотворение (автор – Василий Алексеев): Ньургуһуннар барахсаттар Нуоҕайа нуктууллар: «Кэпсэлгэ киирбит Кэрэ мичээрбин Көрүөххүтүн баҕараҕыт, Күммүтүн көрдөрүҥ, Күлүм аллайыам, Күлэ-үөлэ туруом!» *** Нурмагомедов и Макгрегор Нагнетают: В "Огоньке" Красивая улыбка Хотите посмотреть, Покажите день, Я буду смеяться, Буду смеяться! *** Нурмагомедов и Макгрегор Нагнетают: "Локомотив" вступил в переговоры...
2 недели назад
…Итерируемый объект, для которого запрашивается итерация…
*** …Вы сможете понять и объяснить такую фразу: "…итерируемый объект, для которого запрашивается итерация, чей метод __iter__ запускается методом iter; объект итератора, возвращённый итерируемым объектом, который фактически производит значения во время итерации…"?.. Это описание относится к механизму работы циклов for/while и встроенной функции iter() в языке Python (цитата из книги: Марк Лутц. Изучаем Python. М., СПб, 2020. Т. 1. С. 443. [оригинальное название – Mark Lutz. Learning Python; перевод с английского Ю...
2 недели назад
Зачем киберхондрикам кибер-хандра, или Сможет ли Интернет заменить врачей?
Дед забрался в Интернет, – И чего там только нет! Встретил там нахальную Бабку кибер-хондриальную!.. *** Эй, киберхондрик, забей на кибер-хандру!.. (Компьютерные байки) *** Бо́льшая часть людей не любит посещать врачей и лечебные учреждения. Тем не менее, преобладающее большинство ставит своё здоровье на первое место, – видимо, поэтому пользователи Интернета нашли простой «выход»: они предпочитают искать информацию о различных заболеваниях в Интернете, а не обращаться к врачам. К такому выводу...
2 недели назад
В каких сферах летают бизнес-ангелы?
*** Стартапер, помни: бизнес-ангелов на всех не хватает!.. (Фольклор стартаперов) *** Люди, дающие деньги на бизнес, были всегда и везде, где был и есть бизнес. В разные времена и в разных странах они назывались по-разному. *** Кто такие бизнес-ангелы Бизнес-ангелы (англ. business angels) – это частные инвесторы, вкладывающие личные средства в рискованные проекты (например, частные предприятия на ранней стадии развития или инновационные идеи с минимальным технико-экономическим обоснованием), как правило, без предоставления какого-либо залога...
2 недели назад
Вариации на тему «Hello, World!» в Python. Вариант 8. Интернирование строк
Продолжаем вариации на тему «Hello, World!» в Python. *** import sys a = sys.intern("Hello, World!") print(a) или import sys a = sys.intern('Hello, World!') print(a) Этот код демонстрирует использование механизма интернирования строк в языке Python. Давайте разберём его по частям. 1. import sys В первой строке импортируется встроенный модуль sys. Этот модуль предоставляет доступ к некоторым переменным и функциям, которые тесно взаимодействуют с интерпретатором Python. Одной из таких функций является sys...
3 недели назад