Mam skrypt Pythona, który dał różne dane wyjściowe po uruchomieniu na komputerze z systemem Windows i po uruchomieniu na komputerze Mac. Po głębszym wykopaniu odkryłem, że dzieje się tak dlatego, że gdy Python odczytuje przerwy w wierszach na komputerze Mac (z pliku), to odczytał on w \r\n
, podczas gdy jakoś w systemie Windows \r
znika.Obsługa r n vs n nowe linie w pythonie na komputerze Mac vs Windows
Tak więc, jeśli zmienię co \n
w skrypcie na \r\n
, to działa poprawnie na komputerze Mac. Ale jeśli to zrobię, przestanie działać na komputerze z systemem Windows.
Czy istnieje prosty sposób na rozwiązanie tego problemu?
masz ten błąd podczas odczytywania z pliku? Którą wersją Pythona jesteś? Skąd to masz? Python jest zwykle zbudowany z uniwersalną obsługą nowego wiersza: – Falmarri
@Falmarri Python 3 ... i jestem pewien, że dostałem go z oficjalnej strony Pythona – wrongusername
Oto kolejna niespójność systemu Windows i systemu Linux - w systemie Windows funkcja glob.glob w Pythonie zawsze zwraca listę nazwy plików, posortowane alfabetycznie. W systemie Linux lista nazw plików jest zwracana w losowej kolejności. – PaulMcG