Jak korzystać z os.umask () w Pythonie

Usiłuję ustawić umask za pomocą modułu os. Proszę zauważyć, że mój normalny zestaw umask w moim ~ / .profile to umask 0027.

W powłoce bash,

umask 0022

pozwoli na utworzenie pliku z uprawnieniami

-rw-r--r--

Jednak gdy importujemy moduł os i robimy to:

os.umask(0022)
[do some other code here that creates a file]

Otrzymuję uprawnienia

----------

Po pierwsze, jak zrobić, aby os.umask (maska) zachowywała się jak umask w powłoce?

Po drugie, jaka jest logika między różnicą tych dwóch?

Uwaga: Próbowałem przekonwertować 0022 na dziesiętny na wypadek, gdyby spodziewał się przecięcia dziesiętnego:

os.umask(18)

ale dał zezwolenia

-----w--w-

Zauważ też, że próbowałem

os.umask(00022)

i

os.mask(0o0022)

Który też nie zadziałał.