268: Advice on Beginning to Learn Python
The Real Python Podcast
Episode 268: Advice on Beginning to Learn Python
Что изменилось в обучении Python за последние несколько лет? Какие новые подходы и обновлённые советы стоит знать новичкам, начинающим свой путь в программировании? На этой неделе в подкасте Стивен Группетта и Мартин Брёус вновь обсуждают, как начать изучать Python.
Мы делимся методами поиска мотивации, построения собственных проектов и освоения основ языка. Даём советы по установке Python и объясняем, почему не стоит зацикливаться на выборе «идеального» редактора. Также рассматриваем, как использовать большие языковые модели (LLM) в процессе обучения программированию и практиковаться в умении задавать хорошие вопросы.
Topics:
00:00:00 – Introduction
00:02:36 – Martin’s teaching background
00:02:57 – Stephen’s teaching background
00:04:07 – Having a vested interest in learning
00:08:35 – No shortcut to learning the fundamentals
00:09:21 – Parallels to learning a foreign language
00:12:43 – What’s different about starting to learn Python now?
00:15:03 – Stephen’s journey to coaching and using LLMs
00:16:20 – Are LLMs helpful for learning?
00:18:50 – Teaching what you’ve learned to someone else
00:19:38 – Learning how to ask good questions
00:22:11 – Improved error messages
00:24:35 – REPL: Read Evaluate Print Loop
00:26:33 – Video Course Spotlight
00:27:48 – Installing Python and choosing an editor
00:35:16 – Considering the scale of beginner projects
00:37:39 – Should a beginner be concerned with making Pythonic code?
00:40:55 – Using LLM tools and defining your level of skill
00:42:39 – Python for Beginners: Code With Confidence - live course
00:47:32 – Looking at projects - Awesome Python
00:48:02 – Asking an LLM to explain the code generated
00:50:46 – Debuggers and seeing code run
00:51:23 – Thanks and goodbye
https://realpython.com/podcasts/rpp/268/
#python
👉 @python_real
Что изменилось в обучении Python за последние несколько лет? Какие новые подходы и обновлённые советы стоит знать новичкам, начинающим свой путь в программировании? На этой неделе в подкасте Стивен Группетта и Мартин Брёус вновь обсуждают, как начать изучать Python.
Мы делимся методами поиска мотивации, построения собственных проектов и освоения основ языка. Даём советы по установке Python и объясняем, почему не стоит зацикливаться на выборе «идеального» редактора. Также рассматриваем, как использовать большие языковые модели (LLM) в процессе обучения программированию и практиковаться в умении задавать хорошие вопросы.
Topics:
00:00:00 – Introduction
00:02:36 – Martin’s teaching background
00:02:57 – Stephen’s teaching background
00:04:07 – Having a vested interest in learning
00:08:35 – No shortcut to learning the fundamentals
00:09:21 – Parallels to learning a foreign language
00:12:43 – What’s different about starting to learn Python now?
00:15:03 – Stephen’s journey to coaching and using LLMs
00:16:20 – Are LLMs helpful for learning?
00:18:50 – Teaching what you’ve learned to someone else
00:19:38 – Learning how to ask good questions
00:22:11 – Improved error messages
00:24:35 – REPL: Read Evaluate Print Loop
00:26:33 – Video Course Spotlight
00:27:48 – Installing Python and choosing an editor
00:35:16 – Considering the scale of beginner projects
00:37:39 – Should a beginner be concerned with making Pythonic code?
00:40:55 – Using LLM tools and defining your level of skill
00:42:39 – Python for Beginners: Code With Confidence - live course
00:47:32 – Looking at projects - Awesome Python
00:48:02 – Asking an LLM to explain the code generated
00:50:46 – Debuggers and seeing code run
00:51:23 – Thanks and goodbye
https://realpython.com/podcasts/rpp/268/
#python
👉 @python_real
👍1
🐍 Что нового в Python 3.14
Python 3.14 принес кучу интересных обновлений, которые делают язык ещё мощнее и удобнее для разработчиков. Вот краткий обзор:
🔹 Новый модуль
🔹 Оптимизации скорости — Python продолжает становиться быстрее. Улучшения в байткоде и оптимизация работы с коллекциями дают заметный прирост производительности.
🔹 Новые возможности аннотаций типов — улучшена работа с типами
🔹 Расширения для pattern matching — теперь можно использовать ещё более гибкие шаблоны, особенно для сложных структур данных.
🔹 Изменения в работе GIL — продолжается подготовка к многопоточному Python без GIL в будущем.
https://realpython.com/python314-new-features/
#python
👉 @python_real
Python 3.14 принес кучу интересных обновлений, которые делают язык ещё мощнее и удобнее для разработчиков. Вот краткий обзор:
🔹 Новый модуль
tomllib — теперь можно парсить TOML прямо из стандартной библиотеки без сторонних зависимостей.🔹 Оптимизации скорости — Python продолжает становиться быстрее. Улучшения в байткоде и оптимизация работы с коллекциями дают заметный прирост производительности.
🔹 Новые возможности аннотаций типов — улучшена работа с типами
TypeAliasType, а также добавлены новые инструменты для статического анализа.🔹 Расширения для pattern matching — теперь можно использовать ещё более гибкие шаблоны, особенно для сложных структур данных.
🔹 Изменения в работе GIL — продолжается подготовка к многопоточному Python без GIL в будущем.
https://realpython.com/python314-new-features/
#python
👉 @python_real
👍4❤1👏1😁1🆒1
Шахматы, которые вас удивят: Полный гайд по созданию игры с туманом войны на Python
Всё началось с подготовки к финалу RuCode – масштабному соревнованию для всех увлечённых алгоритмическим программированием. Погружаясь в разбор заданий прошлых лет, мне кое-что совершенно случайно попало в руки, интересная задача: реализовать шахматы с "туманом войны" в консоли
Идея показалась мне настолько вдохновляющей, что я решил пойти дальше, а что если превратить эту консольную головоломку в настоящую игру с графикой и той самой атмосферой тумана войны, который так знаком игрокам в стратегиях
Идея зацепила сразу, представьте классические шахматы, но с элементом неожиданности. Вы не видите все фигуры противника, а только те клетки, куда могут ступить ваши фигуры. Каждый ход превращается в тактическую загадку, что скрывается в темноте? Где спрятался вражеский ферзь? и т.д.
Так обычная подготовка к соревнованиям превратилась в увлекательный эксперимент, результатом которого стала эта статья и реализация шахмат с туманом войны на Python
https://habr.com/ru/articles/958560/
#python
👉 @python_real
Всё началось с подготовки к финалу RuCode – масштабному соревнованию для всех увлечённых алгоритмическим программированием. Погружаясь в разбор заданий прошлых лет, мне кое-что совершенно случайно попало в руки, интересная задача: реализовать шахматы с "туманом войны" в консоли
Идея показалась мне настолько вдохновляющей, что я решил пойти дальше, а что если превратить эту консольную головоломку в настоящую игру с графикой и той самой атмосферой тумана войны, который так знаком игрокам в стратегиях
Идея зацепила сразу, представьте классические шахматы, но с элементом неожиданности. Вы не видите все фигуры противника, а только те клетки, куда могут ступить ваши фигуры. Каждый ход превращается в тактическую загадку, что скрывается в темноте? Где спрятался вражеский ферзь? и т.д.
Так обычная подготовка к соревнованиям превратилась в увлекательный эксперимент, результатом которого стала эта статья и реализация шахмат с туманом войны на Python
https://habr.com/ru/articles/958560/
#python
👉 @python_real
👍4🔥1🤔1
YAML: The Missing Battery in Python
YAML (YAML Ain’t Markup Language) - это человекочитаемый формат сериализации данных, который часто используется для файлов конфигураций, обмена данными между языками и управления инфраструктурой (например, в Docker, Kubernetes и т. д.).
В Python с YAML удобно работать с помощью библиотеки PyYAML. Она позволяет:
- читать YAML-файлы и преобразовывать их в стандартные Python-объекты (
- записывать данные обратно в YAML;
- безопасно загружать данные с помощью
- использовать настраиваемые объекты и теги для сериализации нестандартных типов.
Пример загрузки YAML-файла:
Пример записи:
Также PyYAML поддерживает:
- настройку форматирования вывода (
- пользовательские конструкторы и представления (
- и интеграцию с другими инструментами DevOps.
https://realpython.com/python-yaml/
#python
👉 @python_real
YAML (YAML Ain’t Markup Language) - это человекочитаемый формат сериализации данных, который часто используется для файлов конфигураций, обмена данными между языками и управления инфраструктурой (например, в Docker, Kubernetes и т. д.).
В Python с YAML удобно работать с помощью библиотеки PyYAML. Она позволяет:
- читать YAML-файлы и преобразовывать их в стандартные Python-объекты (
dict, list, str, и т. д.);- записывать данные обратно в YAML;
- безопасно загружать данные с помощью
safe_load() (чтобы избежать выполнения произвольного кода);- использовать настраиваемые объекты и теги для сериализации нестандартных типов.
Пример загрузки YAML-файла:
import yaml
with open("config.yaml", "r") as f:
config = yaml.safe_load(f)
print(config)
Пример записи:
import yaml
data = {"name": "Oleg", "skills": ["Python", "AI", "ML"]}
with open("output.yaml", "w") as f:
yaml.dump(data, f)
Также PyYAML поддерживает:
- настройку форматирования вывода (
default_flow_style=False, indent и т. д.),- пользовательские конструкторы и представления (
add_constructor, add_representer),- и интеграцию с другими инструментами DevOps.
https://realpython.com/python-yaml/
#python
👉 @python_real
👍2