Первая директория в 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
#Блокчейн#EIP4844#DeFi#NFT#Ethereum2#база
Что такое EIP-4844 в Ethereum и почему это важно?
Сегодня поговорим о EIP-4844 — новом предложении по улучшению Ethereum, которое обещает существенно повысить его эффективность.
EIP-4844 (или Proto-Danksharding) направлено на улучшение масштабируемости сети Ethereum путем введения нового типа транзакций и блоб-стоража. Это позволит:
🟢Уменьшить стоимость транзакций — за счет более эффективного использования данных и снижения нагрузки на сеть.
🟢Увеличить пропускную способность — более быстрая обработка большего количества транзакций.
🟢Облегчить внедрение L2 решений — улучшая взаимодействие между основным уровнем и вторичными уровнями (Layer 2), такими как Optimistic Rollups и zk-Rollups.
🔥Вот как это может повлиять на использование Ethereum:
• Меньше комиссий: Сделки станут дешевле, что особенно полезно для DeFi приложений и NFT проектов.
• Быстрее транзакции: Меньше времени на ожидание подтверждения транзакций.
• Больше возможностей для разработчиков: Легче создавать масштабируемые и эффективные dApps.
@MirraChannel😎
#блокчейн#Консенсус#PoS#база
Что такое Proof of Stake (PoS)?
Proof of Stake (PoS) — это один из самых популярных алгоритмов консенсуса, используемых в блокчейн-сетях. В PoS валидаторы избираются на основе количества криптовалюты, которую они держат и готовы "заморозить" (поставить на кон).
☝️Основные особенности PoS:
• Экономия энергии: PoS минимизирует энергозатраты, что делает его более экологичным.
• Доступность и децентрализация: В PoS любой владелец криптовалюты может стать валидатором, что способствует более широкой децентрализации сети.
• Интересы участников: Валидаторы заинтересованы в честной работе , так как при мошеннических действиях их «стейк» (т.е. замороженные средства) может быть конфискован 😏.
📌Примеры использования PoS:
#Ethereum2.0: Один из самых известных блокчейнов, перешедший на PoS, что позволило снизить энергозатраты и улучшить масштабируемость сети.
#Cardano: Известен своим тщательно продуманным механизмом PoS, обеспечивающим безопасность и устойчивость сети.
🔥 PoS уже доказал свою эффективность и стал основой для многих современных блокчейнов, предлагая более устойчивую и экономически выгодную альтернативу традиционным методам консенсуса.
👍 Не забудьте лайкнуть этот пост, если он был полезен, и поделиться с друзьями!
@MirraChannel😎