Наверняка вы замечали, что в Python есть удобная функция для получения переменной окружения
os.getenv(NAME)
И её "сестра" для создания или изменения переменных окружения
os.putenv(NAME, VALUE)
Но почему-то putenv() не работает как должно. Энвайромент не обновляется!
os.putenv('MYVAR', '1')
print(os.getenv('MYVAR'))
... и ничего 😴
Почему так?
На самом деле энвайромент обновляется, но это значение не добавляется в словарь os.environ.
Откройте исходник функции os.getenv(). Это просто шорткат для os.environ.get()
В то время как putenv() это built-in С-функция.
Словарь os.environ (или точней класс из MutableMapping) создаётся из энвайромента в момент инициализации. Функция putenv() самостоятельно его не изменяет.
В тоже время, когда вы создаёте или изменяете ключ в os.environ, автоматически вызывается putenv() в методе __setitem__().
То есть, технически putenv() всё делает верно, но в os.environ это не отражается. Можно проверить так:
>>> os.putenv('MYVAR', '123')
>>> os.system('python -c "import os;print(os.getenv(\'MYVAR\'))"')
123
Я объявил переменную в текущем процессе и вызвал дочерний процесс, который её унаследовал и получил в составе os.environ.
Аналогично при удалении переменной вызывается еще одна built-in функция unsetenv(), удаляющая переменную из системы.
Итого
▫️ Удобней всего явно обновлять переменные через os.environ
▫️ Есть способ неявно создать/удалить переменную через putenv/unsetenv, что не повлияет на os.environ но изменит энвайромент и передаст изменения сабпроцессам. Но так лучше не делать!
▫️os.environ это просто обертка для built-in функций putenv() и unsetenv().
#basic
If you can afford it, you should definetly think about adding a pond to your homestead.
Although it might attract mosquitos during the summer (a counter-measure would be adding fish and frogs to eat the eggs), it improves the micro-biome drastically.
Bees will come and drink, as will birds. When birds have the possibility to drink, chances decrease that they will eat your fruit or berries, as they satisfy their need for hydration from the pond water.
The pond also is a nice temperature equalizer which is accepted by many other useful microfauna.
#homesteading
@EuropeanTribalism
Plant Identification: A Practical Approach Using "Newcomb's Method"
Identifying plants using Newcomb's Method involves looking at the flower type, the plant/branching type, and the leaf type. This system uses a series of questions to guide you towards species identification. The questions are as follows:
For the flower type:
Is the flower regular (radially symmetrical - which means symmetrical in any way it can be divided across the center, like a sunflower) (most flowers fall into this category); or is the flower irregular (only symmetrical when divided one way, such as a mint or pea flower); or are the flower parts indistinguishable (too small to see)? If regular, how many petals or similar parts does it have?
For the plant/branching type:
Is the plant a wildflower, or a woody shrub or vine? If a wildflower, is it without leaves; or if it has leaves, are they all at the base of the plant (basal); or are they arranged singly on the stem (alternate); or are they opposite one another in pairs or whorls (whorled means many leaves coming off in different directions from the same area of the stem, like cleavers)?
For the leaf type:
Are the leaves entire (smooth-edged), or are they toothed, or lobed (split into sections), or divided (separated into leaflets off the same stem)?
🔗Learn More About Newcomb's Method
#Bushcraft#Homesteading
Join @EvolvedTruth🌱
The Ultimate Self-Sufficiency Handbook: A Complete Guide to Baking, Carpentry, Crafts, Organic Gardening, Preserving Your Harvest, Raising Animals, and More by Abigail Gehring
This compact guide provides advice, tips, and step-by-step instructions for hundreds of projects, offering the entire family the tools they need to make the shift toward self-sufficient living. With special features for young homesteaders, this is an essential family guide to self-sufficient living.
🔗Downloadable PDF
#Homesteading#Gardening
@EvolvedTruth
Normal life Off Grid in Ireland.
The idea of living Off Grid can be very different to a lot of people. For some its a cabin in the woods, for others it may be a rustic Homestead in the American wilderness.
For us its just everyday modern life on our little property in the south east of Ireland.
Follow us on youtube, Instagram & Facebook for more.
#OffGrid#homesteading#ireland#diy#ourkilkennyhomestead