Python 3新特性汇总(一)

2020-06-19 00:00:00 专区 参数 关键字 强制 用法

这篇文章灵感来源于一个新项目A short guide on features of Python 3 for data scientists,这个项目列出来了作者使用Python 3用到的一些特性。正巧我近也想写一篇介绍Python 3(特指Python 3.6+)特色用法的文章。开始吧!

pathlib模块

pathlib模块是Python 3新增的模块,让你更方便的处理路径相关的工作。

In : from pathlib import Path
In : Path.home()
Out: PosixPath('/Users/dongweiming')  # 用户目录
In : path = Path('/user')
In : path / 'local'  # 非常直观
Out: PosixPath('/user/local')
In : str(path / 'local' / 'bin')
Out: '/user/local/bin'
In : f = Path('example.txt')
In : f.write_bytes('This is the content'.encode('utf-8'))
Out[16]: 19
In : with f.open('r', encoding='utf-8') as handle:  # open现在是方法了
....:         print('read from open(): {!r}'.format(handle.read()))
....:
read from open(): 'This is the content'
In : p = Path('touched')
In : p.exists()  # 集成了多个常用方法
Out: False
In : p.touch()
In : p.exists()
Out: True
In : p.with_suffix('.jpg')
Out: PosixPath('touched.jpg')
In : p.is_dir()
Out: False
In : p.joinpath('a', 'b')
Out: PosixPath('touched/a/b') 

相关文章