>>> t1 = "abcd.org.gz" >>> t1 'abcd.org.gz' >>> t1.strip("g") 'abcd.org.gz' >>> t1.strip("gz") 'abcd.org.' >>> t1.strip(".gz") 'abcd.or'
Почему пропал "g" of .org?
x.strip(y) удалит все символы, которые появляются в y, в начале и в конце x.
x.strip(y)
y
x
Это значит
'foo42'.strip('1234567890') == 'foo'
, поскольку '4' и '2' оба появляются в '1234567890'.
'4'
'2'
'1234567890'
Используйте os.path.splitext, если вы хотите удалить расширение файла.
os.path.splitext
>>> import os.path >>> t1 = "abcd.org.gz" >>> os.path.splitext(t1) ('abcd.org', '.gz')
strip удаляет любые символы ., g и z из начала и конца строки.
strip
.
g
z
насколько я знаю, полоса удаляет только начало или конец строки.Если вы хотите удалить из всей строки, используйте заменить.
Аргумент, заданный для strip, представляет собой набор символов, которые нужно удалить, а не подстроку. Из документов :
Аргумент chars - это строка, определяющая набор символов, которые нужно удалить.