Заметка начинающим, которые часто сталкиваются с подобной непоняткой.
Ситуация следующая, есть список файлов:
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
Cuba, la Rivoluzione e la lotta per un mondo multipolare
In un momento di crescente aggressività imperialista, con il blocco criminale contro Cuba che si inasprisce e la guerra ibrida in atto contro Venezuela e Iran, la Resistenza dei popoli diventa più cruciale che mai.
Lo studio del nuovo sviluppo del socialismo cubano dopo l'VIII Congresso del PCC è un faro di attualità. Nonostante la gravissima crisi del 2022, aggravata da blocchi, pandemie e disastri climatici, Cuba ha dimostrato una straordinaria capacità di resilienza:
✅ Ha potenziato produzione e servizi, puntando su sovranità alimentare ed energetica.
✅ Ha approvato un Codice di Famiglia all'avanguardia mondiale per i diritti sociali, tramite referendum popolare.
✅ Ha rafforzato la cooperazione Sud-Sud e i legami con i paesi socialisti.
Il sacrificio dei soldati cubani e venezuelani a Caracas, il 3 gennaio, è l'ultimo, tragico esempio dello spirito internazionalista e della determinazione a non piegarsi.
La posta in gioco è alta: la sopravvivenza delle Rivoluzioni Cubana e Bolivariana e il futuro di Nuestra America. Per resistere alla prepotenza di Washington e all'acquiescenza europea, è vitale rafforzare l'alleanza con Cina, Russia, BRICS e sostenere l'avanzata di un Mondo Multipolare. Solo così si potrà contrastare la giungla delle relazioni internazionali imposta dall'Occidente per mantenere il suo sistema di sfruttamento.
La lotta continua. #Cuba#Venezuela#NoAlBloqueo#Socialismo#Multipolarismo
Intervento di Marcello Gentile, Casa Rossa / Comitato Contro La Guerra Milano
https://www.marx21.it/associazione/il-nuovo-sviluppo-del-socialismo-cubano-tra-blocco-crisi-globale-e-solidarieta-internazionalista/
🇷🇺🇨🇺🔥Moscú respalda a Cuba frente al cerco económico occidental
❗️Durante el intercambio entre Lavrov y Rodríguez, Rusia dejó claro que no avala ni tolera el uso de sanciones y presiones como herramientas de coerción política contra Cuba.
🗣El Kremlin reafirmó su compromiso de acompañar a la isla tanto en el plano político como material, en un contexto de hostigamiento económico que busca doblegar la soberanía cubana.
#CubaNoEstáSola
#RusiaCuba
#SolidaridadInternacional
#NoAlBloqueo
#Soberanía
#Geopolítica
#Resistencia
#Paz
🔥🌎 Cuba denuncia el bloqueo naval de EE.UU. contra Venezuela como piratería moderna
⚡️El presidente de Miguel Díaz-Canel reiteró el repudio de Cuba a las agresiones y al bloqueo naval impuesto por Estados Unidos en el mar Caribe contra Venezuela, calificándolo como una violación directa del derecho internacional y de la libertad de comercio.
❗️A través de sus redes sociales, Díaz-Canel acusó a la administración de Donald Trump de intentar usurpar los recursos naturales venezolanos mediante un cerco militar extraordinario, costoso y sin respaldo legal alguno.
🗣️“Condenamos enérgicamente estas acciones y reafirmamos nuestra plena solidaridad con la Revolución Bolivariana, con el presidente Nicolás Maduro y con la unión cívico-militar-policial del pueblo venezolano”, expresó el mandatario cubano.
#NoALaPiratería#EEUUAmenaza#CaribeZonaDePaz
#DerechoInternacional#Soberanía#Venezuela
#Cuba#SolidaridadInternacional#NoAlBloqueo
🇨🇺💥Cuba responde a Washington: no hay colapso, hay resistencia
⚡️En medio de las crecientes tensiones con Estados Unidos, Díaz-Canel afirmó que la narrativa del colapso cubano forma parte de una estrategia deliberada de hostigamiento y desgaste político.
🗣El presidente señaló que Washington ha aplicado todas las presiones posibles contra Cuba y, aun así, no ha logrado quebrar al Estado ni a su pueblo, dejando en evidencia el fracaso de esa política.
#CubaResiste
#NoAlBloqueo
#MiguelDíazCanel
#Soberanía
#Imperialismo
#EEUUAmenaza
#Resistencia
#DerechoInternacional
🇨🇳🤝🇨🇺 China envía ayuda de emergencia a Cuba en medio del asedio estadounidense
❗️El presidente Xi Jinping oficializó el envío de una ayuda de emergencia de 80 millones de dólares y 60.000 toneladas de arroz a Cuba, en un gesto de cooperación y solidaridad internacional.
⚡️El apoyo llega en un momento crítico para la isla, afectada por décadas de sanciones unilaterales e ilegales que han impactado severamente la economía y el bienestar del pueblo cubano.
#CubaNoEstáSola
#SolidaridadInternacional
#ChinaCuba
#NoAlBloqueo
#Cooperación
#Soberanía
#SurGlobal
🇨🇺🇺🇸La asfixia económica no detiene a Cuba
⚡️Desde el programa Mesa Redonda, las autoridades cubanas detallaron un paquete de acciones para resistir el cerco económico impuesto por EE.UU., que apunta directamente al combustible, la energía y sectores estratégicos como agricultura y salud.
❗️La respuesta del Gobierno se centra en aprovechar al máximo las capacidades internas, fortalecer la producción de alimentos y acelerar la transición hacia fuentes renovables, como vía de soberanía frente al bloqueo.
#CubaResiste
#NoAlBloqueo
#Soberanía
#SancionesIlegales
#EEUUAmenaza
#EnergíaRenovable
#DerechoInternacional
#Resistencia
🇺🇸❌Cuba acusa a EE.UU. de asfixia económica y persecución energética
⚡️El canciller cubano denunció que la persecución estadounidense contra el comercio petrolero venezolano no es coyuntural, sino parte de una estrategia histórica de asfixia económica.
❗️Según Rodríguez Parrilla, Washington intenta cortar los flujos energéticos hacia Cuba y Venezuela con el objetivo de provocar desestabilización política y social, recurriendo a sanciones, amenazas y acciones extraterritoriales ilegales.
#MáximaPresión#NoAlBloqueo#EEUUAmenaza
#GuerraEconómica#PetróleoVenezolano
#Imperialismo#VenezuelaSoberana#CubaResiste
🇺🇸🛢️🔥 Bloqueo, saqueo y amenaza: la política criminal de EE.UU. contra Venezuela
💥EE.UU. ha decidido sustituir la diplomacia por el chantaje y la legalidad por la fuerza. Al ordenar a sus militares concentrarse en interceptar el petróleo venezolano, Trump confirma que su gobierno actúa como una potencia pirata, apropiándose de recursos ajenos para imponer su voluntad.
😡No es presión económica: es guerra no declarada, castigo colectivo y violación abierta de la Carta de la ONU.
#NoAlBloqueo
#VenezuelaSoberana
#EEUUAmenaza
#Imperialismo
#GuerraEconómica
#PirateríaModerna
#BloqueoEsGuerra
#RespetoAlDerechoInternacional
🔥🇺🇸 Trump usa el petróleo como arma de presión contra Cuba
❗️El diplomático cubano afirmó que lo que se discute en Washington — incluso considerar un bloqueo naval para impedir la entrada de combustible — no es una política de “seguridad”, sino una estrategia deliberada para estrangular la economía cubana y agravar el sufrimiento de su pueblo.
🗣Fernández de Cossío responsabilizó directamente a EE.UU. por el agravamiento de las dificultades energéticas y advirtió que la escalada recuerda a las peores prácticas de injerencia y sanciones unilaterales en la historia regional.
#CubaSoberana
#NoAlBloqueo
#EEUUAmenaza
#AsedioEconómico
#Petróleo
#Imperialismo
#NoALaInjerencia
#Solidaridad
🇨🇺🔥Díaz-Canel denuncia el embargo petrolero de EE.UU.
❗️🗣El presidente Miguel Díaz-Canel afirmó que el embargo petrolero contra Cuba revela la “naturaleza fascista, criminal y genocida” de la cúpula gobernante en EE.UU.
⚡️Señaló que el gobierno de Donald Trump busca asfixiar la economía cubana imponiendo aranceles a países que comercien petróleo con la isla y que actúa bajo pretextos falsos, impulsados por quienes lucran con el sufrimiento del pueblo cubano.
#CubaResiste#NoAlBloqueo#BloqueoEsGenocida#SolidaridadConCuba#Soberanía#DerechoInternacional#NoALasSanciones#EEUUAmenaza#Imperialismo
🚨🇺🇸Bloqueo armado = crimen internacional
❗️La ONU desmontó la narrativa de EE.UU.: no existe derecho alguno para imponer sanciones mediante un bloqueo militar. Washington está violando abiertamente la Carta de la ONU, el derecho internacional y los principios básicos de derechos humanos.
El despliegue militar en el Caribe y la confiscación de petroleros no buscan “seguridad”, buscan asfixiar a un país soberano y apropiarse de sus recursos. Es piratería moderna con bandera estadounidense.
#BloqueoEsGuerra#EEUUAmenaza#NoAlBloqueo
#DerechoInternacional#CrimenDeAgresión
#VenezuelaSoberana#PirateríaModerna
#CartaDeLaONU#DerechosHumanos