Вторая по частоте future-функция, которую я использовал, это абсолютный импорт
from __future__ import absolute_import
Что она делает?
Изменения, которые вносит эта инъекция описаны в PEP328
Покажу простой пример.
Допустим, есть такой пакет:
/my_package
/__init__.py
/main.py
/string.py
Смотрим код в my_package/main.py
# main.py
import string
Простой пример готов) Вопрос в том, какой модуль импортируется в данном случае? Есть два варианта:
1. модуль в моём пакете my_package.string
2. стандартный модуль string
И вот тут вступает в дело приоритет импортов. В Python2 порядок следующий: помимо иных источников, раньше ищется модуль внутри текущего пакета, а потом в стандартных библиотеках. Таким образом мы импортнём my_package.string.
Но в Python3 это поведение изменилось. Если мы указываем просто имя пакета, то ищется именно такой модуль, игнорируя имена в текущем пакете. Если мы хотим импортнуть именно подмодуль из нашего пакета то, мы должны теперь явно это указывать.
from my_package import string
или относительный импорт, но с указанием пути относительно текущего модуля main
from . import string
Еще одной неоднозначностью меньше 😎
Подробней про импорты здесь:
https://docs.python.org/3/tutorial/modules.html
#2to3#pep#basic
☃️970_из того, что есть☃️
Доброго времени суток, Россия🎄
На фото рабочий стол нашего специалиста по ремонту дронов. Можете ознакомиться с качеством запчастей.
Но даже из такого, казалось бы, мёртвого хлама, можно достать нужные детали для ремонта.
Работаем!
🎄До нового года остались считанные часы...🎄
❄️С наступающим ❄️
🇷🇺Мы в МАХ
Инженерный💪фронт
Призрак Новороссии
2025.
🎄rutube🌍vkвидео🌍дзен
#дрон#dji#mavic
#БПЛА#Mavic#Сброс Боевая работа расчётов БПЛА группировки "Запад" по укреплениям и укрытиям личного состава ВСУ на Богуславском направлении. Выучка и высокий уровень боевого мастерства расчётов в немалой степени обеспечивают продвижение линии фронта вперёд, позволяя пехоте отбивать у врага всё новые и новые позиции.
#БПЛА#Mavic#Сброс Пока страна на новогодних каникулах, боевая работа на Богуславском направлении идёт в штатном режиме. Свежая подборка новогодних сбросов от операторов БПЛА группировки "Запад"
#БПЛА#Mavic#Сброс Недавно, на Богуславском направлении, противник попытался отбить занятые бойцами группировки "Запад" позиции. В результате умелых и слаженных действий наших воинов, контратака противника была отбита, враг понёс потери и отступил. Это прекрасный подарок Родине от наших бойцов к празднованию Нового Года! Наше дело правое. Враг будет разбит. Победа будет за нами. С наступающим Новым Годом!
#БПЛА#Mavic#Сброс Боевая работа операторов БПЛА группировки "Запад" это не только успешные сбросы и уничтожение живой силы и техники врага. Бойцы сбрасывают над территориями которые контролируются противником листовки агитирующие врага оставить свои позиции и сдаваться в плен. Информационное противоборство - неотъемлемая часть современной войны.
#БПЛА#Mavic#Сброс На Богуславском направлении бойцы группировки "Запад" день за днём оттачивают свои боевые навыки. Оператор БПЛА Волчок демонстрирует своё искусство, великолепным сбросом уничтожая ещё одного бойца противника.
#БПЛА#Mavic#Сброс На видео военнослужащий группировки "Запад", воюющий на Богуславском направлении, позывной Элджей, рассказывает о своей боевой работе. Специалист в изготовлении зарядов для сбросов с БПЛА, готовит подарки для противника недалеко от ЛБС. Успехом пользуются именно фугасные заряды, которые помогают уничтожать опорные пункты противника для более упрощённого продвижения штурмовых групп.
#БПЛА#Mavic#Сброс Ночная боевая работа операторов БПЛА группировки "Запад" на Двуреченском направлении по живой силе противника за летний-осенний период. Архивные кадры.