TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #22 · 19 јан.

Заметка начинающим, которые часто сталкиваются с подобной непоняткой. Ситуация следующая, есть список файлов: 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

Hashtags

Резултати

Пронајдени 2 слични објави

Пребарај: #antiwar

当前筛选 #antiwar清除筛选

Ciao! 24.6. La guerra su vasta scala della Russia contro l'Ucraina dura ormai da 3 anni e 4 mesi. 1217 giorni. Leggiamo le notizie e vediamo come le città ucraine siano costantemente sottoposte ai bombardamenti più brutali. Vediamo case rase al suolo, l'impotenza e la tragedia dei civili, le lacrime dei genitori, le fotografie dei morti. 24.6 - Sono stati lanciati 368 missili e droni contro l'Ucraina. Regioni di Kiev, Dnepr, Donetsk, Kharkov, Sumy, Odessa. Secondo i dati preliminari, 19 persone sono morte, compresi bambini, e decine sono rimaste ferite. Oggi, edifici residenziali, scuole, asili e strutture mediche sono stati nuovamente distrutti. Importante di ricordarvi le nostre proteste a sostegno dell’Ucraina e ribadire ancora una volta: non abituatevi alla guerra! https://www.instagram.com/share/p/BAiwoNaDDM?fhid=QkFpd29OYURETQ Cosa più importante, vi chiediamo di sostenere la raccolta fondi del Comitato contro la Guerra. Si tratta di una raccolta punti attualmente in corso, che potremmo chiudere rapidamente tutti insieme, per le centrali elettriche portatili dell'Ospedale N7 di Zaporižžja. https://antiwarcommittee.info/en/energy-for-life/ L'importo totale mancante è di € 11.000 (su € 26.000). Siamo almeno 20 organizzazioni e se ognuna di esse raccoglie 500 euro, un lotto di questi generatori, già in attesa nel magazzino del fornitore, potrà essere spedito in Ucraina nel giro di pochi giorni. Crediamo che ci saranno 100 persone che riusciranno a trasferire 5 €! https://antiwarcommittee.info/en/energy-for-life/#donate (Tutte le spese saranno trasferite centralmente sul conto dei nostri colleghi dell'organizzazione spagnola, che elaboreranno l'ordine e supervisioneranno la consegna.) Pubblicheremo il resoconto sui social network! Per qualsiasi domanda, contattare: [email protected] #energy4UA #energy4life #russicontrolaguerra #antiwar

Привет! 24.6. Уже 3 года и 4 месяца длится полномасштабная война России против Украины. 1217 дней.. Мы смотрим новости и видим, как украинские города постоянно подвергаются жесточайшим обстрелам. Видим до основания разрушенные дома, беспомощность и трагедию мирных жителей, слезы родителей, фотографии погибших людей. 24.6 - 368 ракет и дронов было выпущено по Украине. Киев, Днепр, Донецкая, Харьковская, Сумская, Одесская область. По предварительным данным, погибло 19 человек, среди них дети, десятки раненых. Сегодня снова были разрушены жилые дома, школы, детские сады, медицинские учреждения. Хочется напомнить о наших протестах в поддержку Украины и сказать ещё раз - не привыкайте к войне! https://www.instagram.com/share/p/BAiwoNaDDM?fhid=QkFpd29OYURETQ И самое главное, просим вас поддержать сбор Антивоенного комитета. Это актуальный на данный момент точечный сбор, который мы все вместе смогли бы быстро закрыть - на портативные электростанции для Запорожской больницы N7. https://antiwarcommittee.info/energyforua/ Недостающая общая сумма €11.000 (из €26.000). Нас минимум 20 организаций, и если каждая соберет по €500, то партия этих генераторов, которая уже ждёт на складе у поставщика, сможет в считанные дни отправиться в Украину. Верим, что наберется 100 человек, которые смогут перевести по €5! https://antiwarcommittee.info/energyforua/#donate (Все сборы централизованно пойдут на счет наших коллег из испанской организации, которые оформят заказ и проконтролируют доставку.) Отчёт мы разместим в соцсетях! Если есть вопросы, задавайте: [email protected] #energy4UA #energy4life #russicontrolaguerra #antiwar