Skip to content

SENATOROV (https://github.com/SENATOROVAI/Data-Science-For-Beginners-from-scratch-SENATOROV/issues/75)#653

Closed
Toleranzy wants to merge 2 commits into
SENATOROVAI:mainfrom
Toleranzy:TASK-Виртуальное-окружение-#7

Hidden character warning

The head ref may contain hidden characters: "TASK-\u0412\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0435-\u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435-#7"
Closed

SENATOROV (https://github.com/SENATOROVAI/Data-Science-For-Beginners-from-scratch-SENATOROV/issues/75)#653
Toleranzy wants to merge 2 commits into
SENATOROVAI:mainfrom
Toleranzy:TASK-Виртуальное-окружение-#7

Conversation

@Toleranzy

Copy link
Copy Markdown
Member

@Toleranzy Toleranzy left a comment

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

сабмичу

Comment thread python/venv.ipynb
Comment on lines +1 to +146
{
"cells": [
{
"cell_type": "code",
"execution_count": 2,
"id": "861d13ad",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'Homework.'"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"\"\"\"Homework.\"\"\""
]
},
{
"cell_type": "markdown",
"id": "a1c46bf7",
"metadata": {},
"source": [
"1.Что делает команда python -m venv venv?\n",
"\n",
"#Создает виртуальное окружение\n",
"\n",
"1.1 Что делает каждая команда в списке ниже?\n",
"![image](398252421-62884319-9020-4c01-a4b2-2b956a34ecab.png)\n",
"\n",
"#Выдает список зависимостей в pip(в глобальном питоне)\n",
"\n",
"#Выдает файл с зависимостями\n",
"\n",
"#Загружает все зависимости в файл requirements.txt\n",
"\n",
"2.Что делает каждая команда в списке ниже?\n",
"\n",
"![image](398252102-401cc261-1400-46a9-8b24-ae650d8ce859.png)\n",
"\n",
"#Список окружений conda\n",
"\n",
"#Создать conda-окружение с Python 3.5\n",
"\n",
"#Обновить окружение env_name из файла file.yml\n",
"\n",
"#Активировать виртуальное окружение\n",
"\n",
"#Деактивировать виртуальное окружение\n",
"\n",
"#Очищает кэш conda: удаляет скачанные архивы пакетов и временные файлы\n",
"\n",
"3.вставьте скрин вашего терминала, где вы активировали сначала venv, потом conda, назовите окружение \"SENATOROV\"\n",
"\n",
"![image](screen.png)\n",
"\n",
"4.Как установить необходимые пакеты внутрь виртуального окружения для conda/venv?\n",
"\n",
"#Для venv нужно активировать окружение и установить пакеты через pip: pip install package_name или pip install -r requirements.txt.\n",
"\n",
"#Для conda нужно активировать окружение и установить пакеты через conda install package_name. Если пакета нет в conda, можно использовать pip install package_name внутри активированного conda-окружения.\n",
"\n",
"5.Что делают эти команды?\n",
"#pip freeze > requirements.txt — сохраняет список установленных pip-пакетов текущего окружения в файл requirements.txt.\n",
"\n",
"#conda env export > environment.yml — сохраняет описание текущего conda-окружения со всеми зависимостями в файл environment.yml.\n",
"\n",
"5.1 вставьте скрин, где будет видна папка VENV в вашем репозитории а также файлы зависимостей requirements.txt и environment.yml, файлы должны содержать зависимости\n",
"\n",
"![image](screen2.png)\n",
"\n",
"6.Что делают эти команды?\n",
"\n",
"#pip install -r requirements.txt — устанавливает все pip-пакеты, перечисленные в файле requirements.txt, в текущее активное окружение.\n",
"\n",
"#conda env create -f environment.yml — создает conda-окружение из файла environment.yml и устанавливает в него все указанные зависимости.\n",
"\n",
"7.Что делают эти команды?\n",
"\n",
"#pip list — показывает список всех pip-пакетов, установленных в текущем активном окружении.\n",
"\n",
"#pip show package_name — показывает подробную информацию о конкретном пакете: версию, путь установки, зависимости и описание.\n",
"\n",
"#conda list — показывает список всех пакетов, установленных в текущем conda-окружении.\n",
"\n",
"8.Где по умолчанию больше пакетов venv/pip или conda? и почему дата сайнинисты используют conda?\n",
"\n",
"#По умолчанию больше пакетов доступно через pip, потому что pip устанавливает пакеты из PyPI — самого большого репозитория Python-библиотек. Там обычно быстрее появляются новые версии и больше небольших библиотек.\n",
"\n",
"#Conda часто используют дата-сайентисты, потому что она удобнее для научных и ML-проектов. Conda умеет устанавливать не только Python-пакеты, но и системные зависимости: например библиотеки для NumPy, pandas, scipy, OpenCV и другие бинарные компоненты. Это снижает риск ошибок при установке сложных пакетов.\n",
"\n",
"#Еще conda хорошо управляет окружениями: можно создать отдельное окружение под проект, указать нужную версию Python и зависимости, а потом перенести это окружение через environment.yml.\n",
"\n",
"9.вставьте скрин где будет видно, Выбор интерпретатора Python (conda) в VS Code/cursor\n",
"\n",
"![image](interpretetor.png)\n",
"\n",
"10.добавьте в .gitignore папку SENATOROV \n",
"\n",
"11.Зачем нужно виртуально окружение?\n",
"\n",
"#чтобы изолировать зависимости разных проектов друг от друга\n",
"\n",
"12.С этого момента надо работать в виртуальном окружении conda, ты научился(-ась) выгружать зависимости и работать с окружением?\n",
"\n",
"#Да\n",
"\n",
"Удалите папку VENV, она больше не нужна, мы же не разрабы, нам нужна только conda \n"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "e4ae78f9",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "SENATOROV",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.11.15"
}
},
"nbformat": 4,
"nbformat_minor": 5
}

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Сабмичу

@Toleranzy Toleranzy left a comment

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

сабмичу

Comment thread python/venv.py
Comment on lines +1 to +88
"""Homework."""

# 1.Что делает команда python -m venv venv?
#
# #Создает виртуальное окружение
#
# 1.1 Что делает каждая команда в списке ниже?
# ![image](398252421-62884319-9020-4c01-a4b2-2b956a34ecab.png)
#
# #Выдает список зависимостей в pip(в глобальном питоне)
#
# #Выдает файл с зависимостями
#
# #Загружает все зависимости в файл requirements.txt
#
# 2.Что делает каждая команда в списке ниже?
#
# ![image](398252102-401cc261-1400-46a9-8b24-ae650d8ce859.png)
#
# #Список окружений conda
#
# #Создать conda-окружение с Python 3.5
#
# #Обновить окружение env_name из файла file.yml
#
# #Активировать виртуальное окружение
#
# #Деактивировать виртуальное окружение
#
# #Очищает кэш conda: удаляет скачанные архивы пакетов и временные файлы
#
# 3.вставьте скрин вашего терминала, где вы активировали сначала venv, потом conda, назовите окружение "SENATOROV"
#
# ![image](screen.png)
#
# 4.Как установить необходимые пакеты внутрь виртуального окружения для conda/venv?
#
# #Для venv нужно активировать окружение и установить пакеты через pip: pip install package_name или pip install -r requirements.txt.
#
# #Для conda нужно активировать окружение и установить пакеты через conda install package_name. Если пакета нет в conda, можно использовать pip install package_name внутри активированного conda-окружения.
#
# 5.Что делают эти команды?
# #pip freeze > requirements.txt — сохраняет список установленных pip-пакетов текущего окружения в файл requirements.txt.
#
# #conda env export > environment.yml — сохраняет описание текущего conda-окружения со всеми зависимостями в файл environment.yml.
#
# 5.1 вставьте скрин, где будет видна папка VENV в вашем репозитории а также файлы зависимостей requirements.txt и environment.yml, файлы должны содержать зависимости
#
# ![image](screen2.png)
#
# 6.Что делают эти команды?
#
# #pip install -r requirements.txt — устанавливает все pip-пакеты, перечисленные в файле requirements.txt, в текущее активное окружение.
#
# #conda env create -f environment.yml — создает conda-окружение из файла environment.yml и устанавливает в него все указанные зависимости.
#
# 7.Что делают эти команды?
#
# #pip list — показывает список всех pip-пакетов, установленных в текущем активном окружении.
#
# #pip show package_name — показывает подробную информацию о конкретном пакете: версию, путь установки, зависимости и описание.
#
# #conda list — показывает список всех пакетов, установленных в текущем conda-окружении.
#
# 8.Где по умолчанию больше пакетов venv/pip или conda? и почему дата сайнинисты используют conda?
#
# #По умолчанию больше пакетов доступно через pip, потому что pip устанавливает пакеты из PyPI — самого большого репозитория Python-библиотек. Там обычно быстрее появляются новые версии и больше небольших библиотек.
#
# #Conda часто используют дата-сайентисты, потому что она удобнее для научных и ML-проектов. Conda умеет устанавливать не только Python-пакеты, но и системные зависимости: например библиотеки для NumPy, pandas, scipy, OpenCV и другие бинарные компоненты. Это снижает риск ошибок при установке сложных пакетов.
#
# #Еще conda хорошо управляет окружениями: можно создать отдельное окружение под проект, указать нужную версию Python и зависимости, а потом перенести это окружение через environment.yml.
#
# 9.вставьте скрин где будет видно, Выбор интерпретатора Python (conda) в VS Code/cursor
#
# ![image](interpretetor.png)
#
# 10.добавьте в .gitignore папку SENATOROV
#
# 11.Зачем нужно виртуально окружение?
#
# #чтобы изолировать зависимости разных проектов друг от друга
#
# 12.С этого момента надо работать в виртуальном окружении conda, ты научился(-ась) выгружать зависимости и работать с окружением?
#
# #Да
#
# Удалите папку VENV, она больше не нужна, мы же не разрабы, нам нужна только conda
#

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

сабмичу

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Question 1, to be precise: python -m venv venv создаёт виртуальное окружение в папке с именем venv в текущей директории.

Question 8, : технически в PyPI (pip) больше пакетов в целом, но у conda лучше оптимизированные научные пакеты с предварительно скомпилированными бинарниками - именно поэтому дата-сайентисты её предпочитают, а не просто из-за количества пакетов.

Question 11, additionally: изоляция также означает, что можно использовать разные версии Python для разных проектов и не ломать глобальную установку Python.

Overall: Отличная работа!

@nysib nysib closed this Jul 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants