Заметка начинающим, которые часто сталкиваются с подобной непоняткой.
Ситуация следующая, есть список файлов:
names = [
'image.bmp',
'second.txt.bkp',
'data.db',
'.config.cfg',
'file.ext.bkp'
]
И мы хотим убрать у них окончание ".bkp".
Не знаю зачем, пример довольно надуманный) Но суть он показывает, а это главное.
Те, кто еще не очень знаком с библиотекой os.path или pathlib, вероятно решат обработать имена как строки. И тут вполне подойдет метод строки strip().
Что делает этот метод? Он отрезает указанные символы по обеим сторонам строки. Если ничего не указать, то убирает невидимые символы (пробелы, табуляции и переносы строк).
В нашем случае будет выглядеть вот так:
>>> name.strip('.bkp')
То есть просим удалить строку '.bkp' по краям имени файла, если таковая есть.
Можно применить аналогичный метод rstrip(), чтобы отрезать только справа, но для этого примера используем обычный.
>>> for name in names:
>>> print(name.strip('.bkp'))
image.bm
second.txt
data.d
config.cfg
file.ext
Хм, что-то не то с нашими именами! Что случилось??? Видим нежелательное переименование в именах, где и близко не было указанной строки '.bkp'
А дело всё в том, что данный метод ищет не указанную строку, а указанные символы, и не важно в каком порядке.
Для метода strip() строка '.bkp' это не паттерн для поискаа список символов. Потому он отрезал симовол 'p' от '.bmp' и удалил точку из файла '.config.cfg'.
Как тогда правильно заменить именно паттерн? Для начинающего можно посоветовать метод строки replace(), который как раз использует для замены указанную строку целиком. В нашем примере заменим её на пустую строку.
>>> for name in names:
>>> print(name.replace('.bkp', ''))
image.bmp
second.txt
data.db
.config.cfg
file.ext
Уже лучше, но помните, это лишь пример про strip(). Для работы с именами файлов есть способы и более "правильные", дающие однозначно верный результат. Я взял файлы только в качестве примера. Даже replase() тут может сделать не то что ожидаем.
Просто впредь будьте внимательны с этим strip().
#basic
En saludo al #PrimeroDeMayo se inaugurarán una serie de obras de beneficio e impacto social en el municipio de #Holguín.
Yunior Torres Almaguer, intendente del territorio holguinero, explicó que se ha venido trabajando en un grupo de 20 en saludo al 26 de julio, pero una parte de este se inaugurará en homenaje al Día de los Trabajadores.
Se evalúan viviendas, cuatro obras en el sector de la salud que responden a ocho consultorios médicos de la familia, dos salas del hospital Clínico Quirúrgico Lucía Íñiguez, y otra en el Lenin.
También se incluye la reanimación de dos plazas culturales, un establecimiento para los servicios técnicos personales, dos instituciones del deporte y tres parques en el consejo popular de Vista Alegre.
Según agregó Torres Almaguer, una de las obras de mayor impacto será el Centro de Atención y Reinserción Social.
Se maneja como fecha de presentación de las mismas el día 30 del presente mes.
✍️ Carlos Alberto García
#VideosCimarronas
Luego de que contamos en "imágenes fijas" lo que estuvimos haciendo el primero de mayo, aquí les entregamos nuestro "primer audiovisual" dejando testimonio de nuestro compromiso en tono de trabajo y de clave.
El #PRIMERODEMAYO representa la lucha de clases, la lucha de derechos ante un sistema que deshumaniza: el capitalismo.
¿Y en Cuba? Hay mucho por hacer para completar la justicia y también muchos sueños hechos realidad, que entre todxs hemos conquistado.
Quienes creamos las riquezas y «hacemos andar la rueda de la historia», aunque tengamos que «desafiar poderosas fuerzas» dentro y fuera del país.
(Re)actívate en tu centro laboral, casa, barrio y con el mundo.
¡Hazlo común!
por el #PRIMERODEMAYO
💙TENEMOS UN MUNDO QUE GANAR💙
Trabajadores destacados de diferentes sectores y dirigentes sindicales holguineros fueron reconocidos por sus méritos laborales extraordinarios, aportes importantes a la economía, y su correcta y sostenida actitud ante el #Trabajo.
El acto de condecoraciones, concebido dentro del programa de actividades por el #PrimeroDeMayo, se celebró este lunes en la Plaza de la Revolución Calixto García Íñiguez de #Holguín, y contó con la presencia de Joel Queipo Ruiz, miembro del Comité Central y primer secretario del Partido en la provincia; el General de División Eugenio Ravilero Aguilera, jefe del Ejército Oriental, e Idalmis Serrano Gómez, secretaria general en el territorio de la Central de Trabajadores de #Cuba (#CTC), entre otros dirigentes del Partido, el Gobierno, las organizaciones de masas, la Unión de Jóvenes Comunistas, las Fuerzas Armadas, y la Asociación de Combatientes de la Revolución Cubana.
El orden del desfile por el #PrimeroDeMayo para este 2024 en #Holguín se ha concebido nuevamente por bloques, según información brindada por Tamara Ávila Leyva, secretaria del Comité Municipal de la Central de #TrabajadoresDeCuba en el territorio: 👇👇👇
1. Presidencia
2. Combatientes
3. Jóvenes
4. Construcción
5. Energía y minas
6. Cultura
7. Comercio, gastronomía y servicios
8. Transporte y puerto
9. Salud
10. Hotelería y turismo
11. Azucarero
12. Agropecuario, forestal y tabacalero
13. Industria alimentaria
14. Industria
15. Educación, ciencia y deporte
16. Comunicaciones, informática y electrónica
17. Administración pública
18. Civiles de la defensa
La máxima dirección del país y la #CTC pronostica que este desfile será histórico y estremezcla al mundo con la unidad y el compromiso de todos los cubanos, guiados por el lema: "Por #Cuba#JuntosCreamos".
✍️ Jessica Linares Cardeli, estudiante de Periodismo
AMPPHolguin
Gobierno Provincial de Holguín
El #PRIMERODEMAYO representa la lucha de clases, la lucha de derechos ante un sistema que deshumaniza: el capitalismo.
¿Y en Cuba? Hay mucho por hacer para completar la justicia y también muchos sueños hechos realidad, que entre todxs hemos conquistado.
¡Tenemos un mundo que ganar!
Quienes creamos las riquezas y «hacemos andar la rueda de la historia», aunque tengamos que «desafiar poderosas fuerzas» dentro y fuera del país.
(Re)actívate en tu centro laboral, casa, barrio y con el mundo.
¡Hazlo común!
Intervención comunitaria en el Cerro: pintada y recogida de escombros por el #PRIMERODEMAYO
💙TENEMOS UN MUNDO QUE GANAR💙
#Cimarronas#TenemosUnMundoQueGanar#Feminismos#FeminismoSocialista#MartiresDeChicago
Proyecto Nuestra América Bufa Subversiva Revista Muchacha Revista Mujeres Cenesex La Tizza Tángana en el Trillo HorizontesBlog