Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 2, 2011 23:59:26

boltayka
От:
Зарегистрирован: 2009-10-07
Сообщения: 68
Репутация: +  0  -
Профиль   Отправить e-mail  

Расширение файла с точкой.

Всем привет.
Подниму избитую до дыр тему определения расширения файла (по http-ссылке).
Как я понял, самый кошерный вариант - os.path.splitext(filename) (сразу вопрос, есть ли что-то ещё лучше?)
Но что же делать, когда расширение состоит из двух значений? Напр. user.js, tar.gz, fb2.zip
Можно конечно нашаманить что-нибудь аля if os.path.splitext(filename) = ‘zip’: ext = os.path.splitext(os.path.splitext(filename))+os.path.splitext(filename), но это ведь даже смешно :)
Хочу адекватное решение, гугл молчит

Отредактировано (Авг. 3, 2011 00:00:29)

Офлайн

#2 Авг. 3, 2011 00:32:56

s0rg
От:
Зарегистрирован: 2011-06-05
Сообщения: 777
Репутация: +  25  -
Профиль   Отправить e-mail  

Расширение файла с точкой.

>>> test = “my_file.tar.bz2”
>>> ext = test.split('.')
>>> ext
'bz2'

Офлайн

#3 Авг. 3, 2011 00:49:13

boltayka
От:
Зарегистрирован: 2009-10-07
Сообщения: 68
Репутация: +  0  -
Профиль   Отправить e-mail  

Расширение файла с точкой.

Это я и так знал..
А мне надо
>>> test = “my_file.tar.bz2”
>>> ext = …
>>> ext
'tar.bz2'

Офлайн

#4 Авг. 3, 2011 00:58:47

s0rg
От:
Зарегистрирован: 2011-06-05
Сообщения: 777
Репутация: +  25  -
Профиль   Отправить e-mail  

Расширение файла с точкой.

ext = ".".join(test.split('.')[1:])
А точки в именах?

Отредактировано (Авг. 3, 2011 01:00:06)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version