Первая директория в sys.path
🔸 Когда вы запускаете Python-интерпретатор в интерактивном режиме, в системные пути (sys.path) в самое начало добавляется текущая рабочая директория
>>> for path in sys.path:
... print(f'"{path}"')
""
"/usr/lib/python37.zip"
"/usr/lib/python3.7"
...
Первая строка пустая, что и означает текущую рабочую директорию.
🔸 Если вы запускаете интерпретатор передавая скрипт как аргумент, то история получается иная. На первом месте будет директория в которой располагается скрипт. А текущая рабочая директория игнорируется.
Пишем скрипт с таким содержанием:
# script.py
import sys
for path in sys.path:
print(f'"{path}"')
Запускаем
python3 /home/user/dev/script.py
Получаем
"/home/user/dev"
"/usr/lib/python37.zip"
"/usr/lib/python3.7"
...
🔸 Если вы запускаете скрипт по имени модуля то на первом месте будет домашняя директория текущего юзера
python3 -m script
"/home/user"
"/usr/lib/python37.zip"
"/usr/lib/python3.7"
...
Скрипт должен быть доступен для импорта
На что это влияет?
На видимость модулей для импорта. Если вы ждёте, что, запустив скрипт по пути, сможете импортировать модули из текущей рабочей директории, то вы ошибаетесь. Придётся добавлять путь os.getcwd() в sys.path самостоятельно или заранее объявлять переменную PYTHONPATH.
#basic
🌎 Lightning-fast, the peregrine falcon dives at up to 320 km/h, making it the fastest animal on Earth. Specialized nostrils and strong muscles let it hunt mid-air with pinpoint accuracy. ✨
#falcon⚡#speed⚡#wildlife
👉subscribe Interesting Planet
*761_трофеи*
Что только не встретишь на полях боевых действий: дроны, РЭБ, РЭР, какая-то техника, мотоциклы, велосипеды... А сегодня вот такая «буржуйская» радиостанция, которая устанавливается на НАТОвскую бронетехнику. Знаю что связисты с большой земли такое хотят заполучить, поэтому этот экземпляр уходит к нашему другу, связисту Кибе.
Инженерный💪фронт
Призрак Новороссии
2025.
🎄rutube🌍vkвидео🌍дзен
#связь#falcon#harris
#транзит ракеты по диску Солнца
Falcon 9 📸: John Kraus
Falcon 9 📸: Michael Cain
Falcon 9 📸: Ben Cooper
#Солнце
#Falcon
#apod
22 декабря 2015 компания SpaceX впервые в истории вертикально приземлила первую ступень ракеты-носителя Falcon 9
Falcon 9 — семейство ракет-носителей тяжёлого класса с многоразовой первой ступенью серии Falcon американской компании SpaceX. Falcon 9 состоит из двух ступеней и использует в качестве компонентов топлива керосин марки RP-1 (горючее) и жидкий кислород (окислитель). Цифра «9» в названии обозначает количество жидкостных ракетных двигателей Merlin, установленных на первой ступени ракеты-носителя
#транзит ракеты по диску Луны
Falcon 9 📸: Michael Seeley
Falcon Heavy 📸: Steven Madow
#Луна
#Falcon
#apod
Falcon 9 — семейство ракет-носителей тяжёлого класса с многоразовой первой ступенью серии Falcon американской компании SpaceX