Вторая по частоте 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
Project Infinity X - Official | A14| Nothing Phone 2 (Pong)
📝 Details:
- Version: v1.6
- Device: #Pong
- Released: 25/10/24
⬇️ Download: Here
📖 Changelogs: Device | Source
📔 Instructions: Here
🎄 Device tree : Here
🖼 Screenshot : Here | Here
🆘 Support: Device
🏷 Tags: #AOSP#ROM#InfinityX#U#QPR3#Official
✍️ Note:
• Read changelogs
• OTA available
• Base firmware 2.6.0 is recommended
• Dirty flash possible from previous build
• Based on Qpr3 September Security Patch
• Dolby Atmos available
• Flash meteoric kernel for KSU support
• Nik gapps recommend for vanilla version
🏆 Credits:
- Chandu Dyavanapelli for DT Base
- Hellboy for kernel tree
- Fabian and Hellboy for Glyph Implementation
👤 Maintainer: @Ghosutox
🔔 Updates: @NothingPhone2Updates
🐙 Chat: @NothingPhone2
Project Infinity X - Official | A14| Nothing Phone 2 (Pong)
📝 Details:
- Version: v1.5
- Device: #Pong
- Released: 11/09/24
⬇️ Download: Here
📖 Changelogs: Device | Source
📔 Instructions: Here
🎄 Device tree : Here
🖼 Screenshot : Here | Here
🆘 Support: Device
🏷 Tags: #AOSP#ROM#InfinityX#U#QPR3#Official
✍️ Note:
• Read changelogs
• Base firmware 2.6.0 is recommended
• Dirty flash possible from previous build
• Based on Qpr3 September Security Patch
• Dolby Atmos available
• Flash meteoric kernel for KSU support
• Nik gapps recommend for vanilla version
🏆 Credits:
- Chandu Dyavanapelli for kernel & DT Base
- Fabian and Hellboy for Glyph Implementation
👤 Maintainer: @Ghosutox
🔔 Updates: @NothingPhone2Updates
🐙 Chat: @NothingPhone2
Project Infinity X - Official | A14| Nothing Phone 2 (Pong)
📝 Details:
- Version: v1.4
- Device: #Pong
- Released: 27/08/24
⬇️ Download: Here
📔 Instructions: Here
🎄 Device tree : Here
🖼 Screenshot : Here | Here
🆘 Support: Device
🏷 Tags: #AOSP#ROM#InfinityX#U#QPR3#Official
✍️ Note:
• Initial official release
• Base firmware 2.6.0 is recommended
• Clean flash mandatory
• Based on Qpr3 August Security Patch
• Dolby Atmos available
• Flash meteoric kernel for KSU support
• Nik gapps recommend for vanilla version
🏆 Credits:
- Chandu Dyavanapelli for kernel & DT Base
- Fabian and Hellboy for Glyph Implementation
👤 Maintainer: @Ghosutox
🔔 Updates: @NothingPhone2Updates
🐙 Chat: @NothingPhone2