Как работает функция reload()?
Эта функция нужна для того, чтобы перезагрузить изменившийся код из py-файла без рестарта интерпретатора.
Дело в том, что любой импортированный модуль при повторном импорте не будет перечитывать файл. Функция импорта вернёт уже загруженный в память объект модуля. Чтобы обновить код, нужно либо перезапустить всю программу, либо использовать функцию reload()
from importlib import reload
reload(my_module)
🔸 Функция reload() принимает в качестве аргумента только объект модуля или пакета. Она не может перезагрузить класс или функцию. Только весь файл целиком!
🔸 Перезагрузка пакета перезагрузит только его файл __init__.py, если он есть. Но не вложенные модули.
🔸Она не может перезагрузить ранее не импортированный модуль.
🔸При вызове функция reload() перечитывает и перекомпилирует код в файле, создавая новые объекты. После создания новых объектов перезаписывается ранее созданный неймспейс этого модуля.
Это значит, что если где-то этот модуль импортирован через import и обращение к атрибутам происходит через неймспейс (имя) модуля, то такие атрибуты обновятся.
Если какие-либо объекты из этого модуля импортированы через from то они будут ссылаться на старые объекты.
Напишем простой модуль
# mymodule.py
x = 1
Теперь импортируем модуль и отдельно переменную х из модуля
>>> import mymodule
>>> from mymodule import x
>>> print(mymodule.x)
1
>>> print(x)
1
Не перезапуская интерпретатор вносим изменения в модуль
# mymodule.py
x = 2
Делаем перезагрузку модуля и проверяем х ещё раз
>>> reload(mymodule)
>>> print(mymodule.x)
2
>>> print(x)
1
То же самое будет если присвоить любой объект переменной (даже словарь или список)
Повторный импорт обновляет значение
>>> from mymodule import x
>>> print(x)
2
🔸Созданные инстансы классов не обновятся после перезагрузки модуля. Их придётся пересоздать.
#tricks#basic
https://docs.python.org/3.5/library/csv.html
The so-called #CSV (Comma Separated Values) format is the most common import and export format for spreadsheets and databases. CSV format was used for many years prior to attempts to describe the format in a standardized way in RFC 4180. The lack of a well-defined standard means that subtle differences often exist in the data produced and consumed by different applications. These differences can make it annoying to process CSV files from multiple sources. Still, while the delimiters and quoting characters vary, the overall format is similar enough that it is possible to write a single module which can efficiently manipulate such data, hiding the details of reading and writing the data from the programmer.
🚢Solstad Maritime продлевает контракт на CSV "Normand Energy".
Норвежский судовладелец Solstad Maritime получил продление контракта на судно типа CSV - "Normand Energy" (2007 г. постройки), которое продолжает работать по контракту с кабельным гигантом Prysmian.
Стороны согласовали твердый период продления сроком на восемь месяцев — с 1 апреля по 30 ноября — с возможностью дальнейших опционов. Контракт обеспечивает непрерывную загрузку судна до начала более долгосрочного соглашения, запланированного на первый квартал 2027 года.
С отраслевой точки зрения продление отражает устойчивый спрос на специализированные офшорные суда в сегменте подводной инфраструктуры, включая прокладку кабелей и обслуживание энергетических проектов.
Замена ранее задействованного "Normand Ocean" на более крупное и функциональное судно подчеркивает тенденцию к использованию более производительных единиц для повышения эффективности операций.
Наличие промежуточного контракта до 2027 года указывает на высокий уровень загрузки флота в данном сегменте и ограниченное предложение подходящего тоннажа, что поддерживает ставки и усиливает позиции операторов специализированных судов на фоне роста проектов в области энергетики и телекоммуникаций.
📌Solstad Maritime — основана в 1964 году, частная норвежская компания, входит в группу Solstad Offshore ASA, контролируемую норвежскими инвесторами и кредиторами.
#offshore#CSV#shipping#energy#subsea
🚢Petrobras продлевает контракт на CSV "Normand Fortress" на $56 млн.
Бразильская Petrobras предоставила двухлетнее продление контракта стоимостью около $56 млн для судна "Normand Fortress", принадлежащего Solstad Maritime (SOMA). Контракт вступит в силу в начале июля.
Судно типа CSV будет обеспечивать проживание персонала и поддержку производственных операций на континентальном шельфе Бразилии. Контракт реализуется через Solstad Offshore, выступающей держателем соглашения с Petrobras.
Судно "Normand Fortress" (проект MT 6016 MK II, 2006 г. постройки) рассчитано на размещение до 100 человек и обладает грузовой палубой площадью около 800 м², что делает его универсальной платформой офшорных проектов.
С отраслевой точки зрения продление контракта отражает устойчивый спрос на вспомогательные офшорные суда в сегменте глубоководных работ, где активность Petrobras продолжает поддерживать загрузку флота.
Долгосрочные соглашения повышают предсказуемость доходов и усиливают позиции операторов на фоне ограниченного предложения специализированного тоннажа.
📌Solstad Offshore ASA — основана в 1964 году, публичная норвежская компания, принадлежит институциональным инвесторам и кредиторам.
#offshore#CSV#shipping#Brazil#energy
#typescript#csv#diagrams#graph#json#nextjs#react#tool#visualization#yaml
JSON Crack is a free, open-source tool that instantly turns complex JSON, YAML, CSV, XML, or TOML data into clear, interactive graphs, making it easier to explore and understand your information. It lets you convert between formats, validate data, generate code (like TypeScript interfaces), run queries, and export visuals as images—all while keeping your data private since everything processes locally on your device[1][2][5].
https://github.com/AykutSarac/jsoncrack.com
#cplusplus#arduino#cansat#csv#embedded#graph#ground_station#iot#microcontroller#network#projects#qt#serial#serial_studio
Serial Studio is a free, easy-to-use tool that lets you visualize real-time data from devices like microcontrollers via serial ports, Bluetooth, or network connections. It works on Windows, macOS, and Linux, and offers customizable dashboards with various widgets to monitor sensor data, debug info, or telemetry. You can quickly plot data, export it as CSV for analysis, and even use advanced features like checksum validation and JavaScript data processing. It supports hobbyists, educators, and professionals by simplifying data monitoring and debugging, saving you time and effort in understanding your device’s output. Pro versions add commercial use and extra features[1][4][5].
https://github.com/Serial-Studio/Serial-Studio