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 слични објави

Пребарај: #teamgp

当前筛选 #teamgp清除筛选
跑跑資訊站 KartInfo

@KartInfoTW · Post #342 · 23.02.2022 г., 10:00

韓服 2/24 更新(神祕商店、2022 聯賽應援產包、計時賽競技戰、三一節活動) 🔥 更新詳情:https://kinf.cc/slNe9 ▶️ 追蹤 Google 新聞:https://kinf.cc/gn ▶️ 立即加入 Discord:https://kinf.cc/dc #跑跑卡丁車#KartRider#神祕商店#雷之爆烈V1#鋼之合金V1#烈焰馬拉松V1#聖騎士尖峰V1#跑跑聯賽#應援#產包#BLADES#LiivSANDBOX#TeamGP#KWANGDONGFREECS#1vs1#計時賽#競技戰#三一節#ShowTime#抽獎#HotTime

跑跑資訊站 KartInfo

@KartInfoTW · Post #344 · 26.02.2022 г., 03:50

韓服 2022 跑跑聯賽第一季將於今日開打,賽程會一路打到五月,這一季總獎金同樣高達 500 萬元, 這次跑跑聯賽官網也同步改版,整合 PC / Rush+ 聯賽成為一站式聯賽專題網站,當然除了每日賽程觀賽獎勵外,開幕賽當日還有加碼抽「傳說零件 V1」等多項大獎! 🏁 詳細聯賽資訊:https://kinf.cc/wc7ie ▶️ 追蹤 Google 新聞:https://kinf.cc/gn ▶️ 立即加入 Discord:https://kinf.cc/dc #跑跑卡丁車#KartRider#韓服#職業#聯賽#跑跑聯賽#카트리그#第一季#Season1#LiivSANDBOX#BLADES#KWANGDONGFreecs#TeamGP#Phase#DDK#latte#AxelZ#開幕賽#傳說零件V1#稀有零件V1#舒適V1_Black#雷之爆烈V1#鋼之合金V1#烈焰馬拉松V1#聖騎士尖峰V1