Найти - Пользователи
Полная версия: День недели в ввиде Пн, Вт, Ср и т.д.
Начало » Python для новичков » День недели в ввиде Пн, Вт, Ср и т.д.
1 2 3
Budulianin
JOHN_16
Budulianin
еще интереснее

Ну дак задай её через setlocale, и будет такая, какую укажешь.
JOHN_16
Budulianin
я к тому что на Винде данный метод в целом не желателен, и лучше использованием списка с задаными нужным образом днями - такой код всегда даст нужный результат. в отличии от локали
Budulianin
JOHN_16
я к тому что на Винде данный метод в целом не желателен, и лучше использованием списка с задаными нужным образом днями - такой код всегда даст нужный результат. в отличии от локали

С чего ты взял что именно на винде он нежелателен ?

Из-за того что локаль None ?
Lexander
JOHN_16
я к тому что на Винде данный метод в целом не желателен, и лучше использованием списка с задаными нужным образом днями - такой код всегда даст нужный результат. в отличии от локали
Ну уж нет.
Давайте не будем повторять ошибок американцев с их ANSI.
Гвидо писал о реализации C-шных строковых модулей Питона:
According to the ANSI standard, a C program *must* call setlocale(LC_…, “”) if it wants the environment variables to be honored
А все почему?
На одной и той же машине у разных пользователей может быть разная локаль - мы живем в мире трансатлантических корпораций, кругосветных путешествий и удаленной работы.
JOHN_16
Budulianin
С чего ты взял что именно на винде он нежелателен ?
Из-за того что локаль None ?
прошу прощения за поспешный вывод, на линуксе тоже обнаружил такое - возвращение кортежа из None.
Спутался с locale.getdefaultlocale()

Lexander
Все таки ваша правда=)
Думаю что при написании правильного кода нужно устанавливать локаль.
>>> locale.setlocale(locale.LC_ALL, '')
'Russian_Russia.1251'
>>> locale.getlocale()
('Russian_Russia', '1251')
>>> print time.strftime('%a', time.localtime(t))
Пн
Я не углубился в тему вопроса. но для меня несколько странно почему она не устанавливается по умолчанию. ведь настройки то по умолчанию есть…
Budulianin
JOHN_16
Все таки ваша правда=)
Думаю что при написании правильного кода нужно устанавливать локаль.

Было бы очень странно, иметь локализации в системе, иметь модуль в Python для работы с локализациями и не пользоваться этим всем.

JOHN_16
Я не углубился в тему вопроса. но для меня несколько странно почему она не устанавливается по умолчанию. ведь настройки то по умолчанию есть…

Вообще-то, если настройки бы у тебя были прописаны, то возвратился бы не None.

budulianin@budulianin-F5V:~$ locale
LANG=ru_RU.UTF-8
LANGUAGE=en_US
...
>>> import locale
>>> locale.getlocale()
('ru_RU', 'UTF-8')
budulianin@budulianin-F5V:~$ export LANG=
budulianin@budulianin-F5V:~$ locale
LANG=
LANGUAGE=en_US
...
>>> import locale
>>> locale.getlocale()
(None, None)
JOHN_16
Budulianin
у меня в линухе openSUS 12.1 это есть
Budulianin
LANG=ru_RU.UTF-8
а этого нет
Budulianin
LANGUAGE=en_US
и LC_ALL пустой.

Budulianin
budulianin-F5V
ноут ASUS-F5 серии ?:-)
Budulianin
JOHN_16

LANG непустой и None выводит?

ASUS X50V, а что ?
JOHN_16
Budulianin
LANG непустой и None выводит?
именно так. в LANG значится ru_RU.UTF-8, а locale.getlocale() выводит (None, None)

Budulianin
ASUS X50V, а что ?
та не, эт просто, ничего
py.user.next
Lexander
На одной и той же машине у разных пользователей может быть разная локаль
автору нужно, чтобы отображалось “Пн, Вт, Ср”
не где-то “Пн”, где-то “Пон”, а где-то “Mon”

JOHN_16
менно так. в LANG значится ru_RU.UTF-8, а locale.getlocale() выводит (None, None)
может быть настроено одно, а выводиться другое

у меня был случай на C: программа создавала логи, а именовала их по дате с помощью strptime(); поначалу всё работало нормально, но на другой системе это вылилось в кракозябры в именах
причём имена проверялись на английских названиях, поэтому поначалу как-то и подуматься не могло, что там что-то сломается
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB