@mtprotoclientscommits · Post #3431 · 21.02.2026 г., 21:21
LonamiWebs/Telethon/v1 • dab6bc4 • 1 files, +4/-0 Migrate off GitHub #telethon
Hashtags
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
Пребарај: #telethon
@mtprotoclientscommits · Post #3431 · 21.02.2026 г., 21:21
LonamiWebs/Telethon/v1 • dab6bc4 • 1 files, +4/-0 Migrate off GitHub #telethon
Hashtags
@mtprotoclientscommits · Post #3430 · 12.02.2026 г., 21:36
LonamiWebs/Telethon/v1 • 6e9bf16 • 1 files, +1/-0 Add error code for sending videos in chat (#4741) #telethon
Hashtags
@mtprotoclientscommits · Post #3429 · 11.02.2026 г., 19:06
LonamiWebs/Telethon/v1 • 295c736 • 1 files, +5/-1 Fix InvalidBuffedError on incomplete recv data (#4740) Co-authored-by: Maksym Veremchuk <[email protected]> #telethon
Hashtags
@mtprotoclientscommits · Post #3428 · 07.02.2026 г., 19:51
LonamiWebs/Telethon/v1 • 208ac30 • 1 files, +45/-31 Update to layer 222 #telethon
Hashtags
@mtprotoclientscommits · Post #3427 · 01.02.2026 г., 19:51
LonamiWebs/Telethon/v1 • d57be74 • 1 files, +22/-0 Catch-all unknown RPCError and treat them as transient during getDifference Can be considered to close #4739. #telethon
Hashtags
@mtprotoclientscommits · Post #3426 · 12.01.2026 г., 16:36
LonamiWebs/Telethon/v1 • 416570f • 2 files, +3/-3 Fix doc typos on some raw API types (#4732) #telethon
Hashtags
@mtprotoclientscommits · Post #3425 · 04.01.2026 г., 16:51
LonamiWebs/Telethon/v1 • 980a2c0 • 2 files, +15/-3 Update to layer 221 #telethon
Hashtags
@mtprotoclientscommits · Post #3424 · 03.01.2026 г., 18:36
LonamiWebs/Telethon/v1 • f3bd039 • 1 files, +3/-0 Add errors for chat restrictions (#4729) #telethon
Hashtags
@mtprotoclientscommits · Post #3422 · 30.12.2025 г., 10:21
LonamiWebs/Telethon/v1 • 5efa1fe • 6 files, +20/-51 Update proxy docs and warn if python-socks is not installed As suggested in #4505. #telethon
Hashtags
@mtprotoclientscommits · Post #3420 · 18.12.2025 г., 16:51
LonamiWebs/Telethon/v1 • 05b8488 • 1 files, +12/-3 Fix Telethon could not be imported without sqlite3 Closes #4723. #telethon
Hashtags
@mtprotoclientscommits · Post #3419 · 17.12.2025 г., 07:21
LonamiWebs/Telethon/v1 • 664ceba • 1 files, +4/-3 Fix TestSyncifyAsyncContext.test_sync_acontext on Python 3.14 (#4722) `asyncio.get_event_loop` fails on Python 3.14 if there is no current event loop. For this particular test of sync behaviour, it seems to make most sense to explicitly create one. #telethon
Hashtags
@mtprotoclientscommits · Post #3418 · 06.12.2025 г., 21:51
LonamiWebs/Telethon/v1 • 676c436 • 1 files, +46/-15 Update to layer 220 #telethon
Hashtags