[TASK] Cpython (https://github.com/SENATOROVAI/intro-cs/issues/4)#591
Open
ZtArthur wants to merge 1 commit intoSENATOROVAI:mainfrom
Open
[TASK] Cpython (https://github.com/SENATOROVAI/intro-cs/issues/4)#591ZtArthur wants to merge 1 commit intoSENATOROVAI:mainfrom
ZtArthur wants to merge 1 commit intoSENATOROVAI:mainfrom
Conversation
ZtArthur
commented
Mar 29, 2026
Comment on lines
+1
to
+153
| """[TASK] Cpython.""" | ||
|
|
||
| # --- | ||
| # # Инструкция по созданию ветки | ||
| # 1. зайдите в кошку | ||
| # 2. нажмите история | ||
| # 3. пролистайте список коммитов вниз, до момента вашего самого первого коммита, потом выберите мой коммит и создайте новую ветку на его основе, назвав точно также как название ишьюса => **[Смотреть скриншот ](https://github.com/user-attachments/assets/311d9096-c0f2-4b9f-bf03-950b25a239f6)** | ||
| # 4. Выполните задание из этого ишьюса в новой ветке | ||
| # --- | ||
| # | ||
| # - Посмотрите видео [Интерпритатор Cpython и PYPY](https://youtu.be/ooLcXygrLnU) и ответьте на вопросы: | ||
| # | ||
| # Создаем файл в папке python/cpython.ipynb [в вашем репозитории](https://github.com/SENATOROVAI/Data-Science-For-Beginners-from-scratch-SENATOROV) и отвечаем в маркдауне на вопросы | ||
| # | ||
| # Введение в Python и CPython | ||
| # | ||
| # 1. Что такое CPython и чем он отличается от Python? | ||
| #  | ||
| # 3. Сколько существует реализаций Python, и какая из них самая популярная? | ||
| # 6 видов, самая популярная cpython | ||
| # 4. На каком языке написан CPython? | ||
| # На языке C | ||
| # | ||
| # Поиск и установка CPython | ||
| # | ||
| # 1. (опционально) Кто создал CPython? | ||
| # Гвидо ван Россум | ||
| # 2. Почему Python считается быстрым, несмотря на то, что это интерпретируемый язык? | ||
| # В случае с cpython, перед выполнением код компилируется в байт код | ||
| # 3. Напишите путь к Интерпретатору CPython на вашем компьютере | ||
| # C:\Users\azoti\AppData\Local\Programs\Python\Python313\python.exe | ||
| # | ||
| # Структура CPython | ||
| # | ||
| # 8. Что содержится в папке include в CPython? | ||
| # Библиотеки на языке C | ||
| # 9. Где можно найти исходный код CPython дайте ссылку на репозиторий гитхаб | ||
| # https://github.com/python/cpython | ||
| # 10. (опционально) Как работает интерпретатор CPython при выполнении кода? | ||
| # 1) Исходный код парсится и формируется абстрактное синтаксическое дерево | ||
| # 2) АСТ компилируется в байт код | ||
| # 3) Выполняет инструкции байт кода: стек, вызовы, объекты, ветвления | ||
| # 4) Повторяющиеся модули кешируются, чтобы не делать лишнюю компиляцию | ||
| # | ||
| # Запуск файла с помощью CPython | ||
| # | ||
| # 11. Какая команда используется для запуска файла с помощью CPython? | ||
| # python [filename].py | ||
| # 12. Можно ли запускать текстовые файлы через интерпретатор Python? Почему? | ||
| # Можно, потому что он смотрит на содержимое, а не расширения файла. | ||
| # 13. Как указать путь к интерпретатору и файлу для выполнения кода? | ||
| # Указать каталог расположения и сам интерпретатор и через пробел аналогично файл с кодом | ||
| # | ||
| # Введение в PyPy | ||
| # | ||
| # 14. Чем PyPy отличается от CPython? | ||
| # Работает в разы быстрее чем Cpython | ||
| # 15. Почему PyPy не может использоваться для всех проектов на Python? | ||
| # Новый, не все поддерживает, поэтому пока только определенные вещи в проекте | ||
| # 16. Где можно скачать PyPy? | ||
| # pypy.org | ||
| # | ||
| # Установка и запуск PyPy | ||
| # | ||
| # 17. Как установить PyPy после скачивания? | ||
| # Запустить скачанный исполняемый файл | ||
| # 18. Как запустить файл с помощью PyPy? | ||
| # Указать каталог расположения и сам интерпретатор и через пробел аналогично файл с кодом | ||
| # 19. Почему PyPy выполняет код быстрее, чем CPython? | ||
| # cpython построчно компилирует код в байт код каждый раз, а jit компилятор у pypy во время выполнения и только "горячие" пути (часто выполняемые), кешируя их | ||
| # | ||
| # | ||
| # ### Практические задания | ||
| # Задание 1: Поиск и установка CPython | ||
| # | ||
| # Проверьте, установлен ли CPython на вашем компьютере: | ||
| # Используйте поиск в меню "Пуск" (Windows) или терминале (Linux/Mac). | ||
| # Введите команду python --version или python3 --version в терминале. | ||
| # Если CPython не установлен, скачайте его с официального сайта Python https://www.python.org/downloads/ и установите. | ||
| # | ||
| # Установлен - 3.13.12 | ||
| # | ||
| # Задание 2: Исследование структуры CPython | ||
| # | ||
| # Найдите папку, где установлен Python (например, через команду where python в терминале или свойства ярлыка). | ||
| # C:\Users\azoti\AppData\Local\Programs\Python\Python313\include | ||
| # Откройте папку include и изучите её содержимое. Какое количество файлов на C там есть? | ||
| # 264 файла | ||
| # Перейдите на [GitHub-репозиторий CPython](https://github.com/python/cpython) и найдите файл README. Прочитайте информацию о проекте. | ||
| # Прочитал | ||
| # | ||
| # Задание 3: Запуск файла с помощью CPython | ||
| # | ||
| # Создайте текстовый файл example.txt с содержимым: | ||
| # | ||
| # print("Hello from CPython!") | ||
| # | ||
| # Запустите файл через команду python <путь_до_файла> (замените <путь_до_файла> на фактический путь к вашему файлу). | ||
| # Проверьте, что выводится на экран. Попробуйте изменить расширение файла на .py и повторите запуск. | ||
| # | ||
| # C:\Users\azoti\AppData\Local\Programs\Python\Python313\python.exe D:/example.txt | ||
| # Hello from CPython! | ||
| # | ||
| # C:\Users\azoti\AppData\Local\Programs\Python\Python313\python.exe D:/example.py | ||
| # Hello from CPython! | ||
| # | ||
| # | ||
| # Задание 4: Установка и использование PyPy | ||
| # | ||
| # Перейдите на [официальный сайт PyPy](https://www.pypy.org/) и скачайте подходящую версию для вашей операционной системы. | ||
| # Распакуйте скачанный архив в удобное место. | ||
| # Создайте файл example_pypy.py с кодом: | ||
| # | ||
| # print("Hello from pypy!") | ||
| # | ||
| # Запустите файл через PyPy | ||
| # pypy <путь_до_файла> (замените <путь_до_файла> на фактический путь к вашему файлу). | ||
| # Проверьте, что выводится на экран. Попробуйте изменить расширение файла на .py и повторите запуск. | ||
| # | ||
| # C:\Users\azoti\Downloads\pypy3.11-v7.3.21-win64\pypy.exe d:/example_pypy.py | ||
| # Hello from pypy! | ||
| # | ||
| # Задание 5: Сравнение производительности CPython и PyPy | ||
| # | ||
| # Создайте файл performance_test.py с кодом: | ||
| # | ||
| # ``` | ||
| # import time | ||
| # start_time = time.time() | ||
| # total = 0 | ||
| # for i in range(1, 10000000): | ||
| # total += i | ||
| # end_time = time.time() | ||
| # | ||
| # print("Result:", total) | ||
| # print("Execution time:", end_time - start_time, "seconds") | ||
| # ``` | ||
| # | ||
| # | ||
| # Запустите этот файл сначала через CPython, а затем через PyPy. Запишите результаты времени выполнения для обоих интерпретаторов. | ||
| # Сделайте вывод о разнице в производительности. | ||
| # | ||
| # C:\Users\azoti\Downloads\pypy3.11-v7.3.21-win64\pypy.exe d:/performance_test.py | ||
| # Result: 49999995000000 | ||
| # Execution time: 0.009662389755249023 seconds | ||
| # | ||
| # C:\Users\azoti\AppData\Local\Programs\Python\Python313\python.exe d:/performance_test.py | ||
| # Result: 49999995000000 | ||
| # Execution time: 0.8602514266967773 seconds | ||
| # | ||
| # Вывод: PyPy ускорил этот цикл примерно в 80–90 раз по сравнению с CPython | ||
| # | ||
| # ### Завершите выполнение ишьюса, [согласно инструкции](https://github.com/SENATOROVAI/intro/issues/5) |
|
Ревью сделано, |
Comment on lines
+1
to
+10
| """[TASK] Cpython.""" | ||
|
|
||
| # --- | ||
| # # Инструкция по созданию ветки | ||
| # 1. зайдите в кошку | ||
| # 2. нажмите история | ||
| # 3. пролистайте список коммитов вниз, до момента вашего самого первого коммита, потом выберите мой коммит и создайте новую ветку на его основе, назвав точно также как название ишьюса => **[Смотреть скриншот ](https://github.com/user-attachments/assets/311d9096-c0f2-4b9f-bf03-950b25a239f6)** | ||
| # 4. Выполните задание из этого ишьюса в новой ветке | ||
| # --- | ||
| # |
Member
There was a problem hiding this comment.
не надо выбирать эти строки
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes https://github.com/SENATOROVAI/intro-cs/issues/4