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

Резултати

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

Пребарај: #chinaunicom

当前筛选 #chinaunicom清除筛选
不求甚解

@Fakeye · Post #12 · 04.11.2019 г., 01:54

#ChinaUnicom 联通用户在水深火热中啊。作为一个 7 年联通老粉,当年为了支持联通 FDD LTE 而抛弃了移动,可现在联通依旧信号覆盖弱,在目前阶段还涉嫌 4G 降速,让老用户有苦难言。 就拿前阶段的真实事情来说吧。公司园区联通信号堪忧,只要一进入电梯或者地下车库就没信号了,看到 Twitter 上有朋友通过工信部投诉解决了小区信号覆盖的问题。索性我也试试,于是在今年 8 月 20 日左右去工信部网站填了表,2 天后接到联通工作人员打来的电话,告知我所投诉的地点目前其实已经在做基站覆盖的施工了,但是苦于硬件设备迟迟没有到货所以还没有完成施工,现场人员反馈 10 月底可以完工,该工作人员表示将会一直跟踪我的投诉直至施工完成。目前已经 11 月了,信号问题仍然没有解决,上周联通的工作人员又打来电话,说是设备到货太晚了,现场人员反馈需要11 月底才能完成部署,让我耐心等等,他会一直跟踪。 所以说,从目前阶段来看,联通的信号覆盖问题真的是令人头痛,投诉后依然不受重视,不知道都忙着部署 5G 去了还是有什么其他原因。我现在唯一希望的就是 11 月底携号转网服务正式施行,马上转走 👋。

Hashtags