2014.09.24 14:05
kompilacja modułu Pythona jak są różne strefy czasowe

Jak się w Pythonie importuje moduł (plik z rozszerzeniem py), to Python go kompiluje i wynik kompilacji zapisuje do pliku z rozszerzeniem pyc. I jeśli potem, po jakimś czasie, drugi raz importuję ten moduł, to Python zauważa ten plik pyc i jeśli źródło modułu (plik py) nie jest nowsze od tego pyc, to Python już nie kompiluje, tylko bierze skompilowany z pliku pyc. Śmiesznie jest, kiedy będąc w Anglii się połączy przez WinSCP (a pewnie z innymi klientami SFTP byłoby podobnie) z serwerem w Polsce i edytuje moduł. WinSCP domyślnie przesyłając plik na serwer przesyła też jego czas ostatniej modyfikacji - i jest to czas londyński. Serwer tworząc plik pyc ustawia mu czas ostatniej modyfikacji według czasu polskiego. Więc kiedy zmieniam coś w module, to jeśli od ostatniej kompilacji tego modułu minęła mniej niż godzina, Python tej zmiany nie zauważa.


komentarze:

ksywa:

tu wpisz cyfrę cztery: (tu wpisz cyfrę cztery: (to takie zabezpieczenie antyspamowe))

komentarze wulgarne albo co mi się nie spodobają będę kasował


powrót na stronę główną

RSS