Easypathlib
Что такое pathlib?
1Постановка
Разберём, что от вас хотят в этом вопросе и как к нему подступиться на собеседовании.
2Решение
pathlib (Python 3.4) — объектно-ориентированный API для файловых путев, замена os.path. Cross-platform — Path адаптируется к ОС.
from pathlib import Path
p = Path('/tmp') / 'sub' / 'file.txt' # concat через /
p.name # 'file.txt'
p.stem # 'file' (без расширения)
p.suffix # '.txt'
p.parent # /tmp/sub
p.exists() # True/False
p.mkdir(parents=True, exist_ok=True)
content = p.read_text(encoding='utf-8') # весь файл сразу
p.write_text('hello')
for f in Path('.').rglob('*.py'): # recursive glob
print(f)
Path.home() # домашняя директория
Path.cwd() # текущаяiterdir()— дочерние;glob(pattern),rglob(pattern);PurePath(без I/O) для path manipulation;- В Python 3.6+ все I/O функции в
osпринимают Path.
3Как отвечать
- Сначала уточните условия и ограничения, покажите аналитическое мышление.
- Рассуждайте вслух — интервьюеру важен ход мысли, а не только финальный ответ.
- Оцените сложность по времени и памяти (Big-O), если это алгоритмический вопрос.
💡
На реальном собеседовании Alffert подскажет развёрнутый ответ в реальном времени.