专栏名称: 进击的Coder
崔庆才的个人公众号,分享有关网络爬虫、Web开发、机器学习、技术心得、时事新闻、个人感悟等内容。
今天看啥  ›  专栏  ›  进击的Coder

这几个被淘汰的 Python 库,请不要再用!

进击的Coder  · 公众号  · 科技自媒体  · 2024-09-02 17:00
    

主要观点总结

本文主要介绍了Python的新特性和最佳实践,包括Pathlib模块替代os.path、Secrets模块替代os.urandom、Zoneinfo替代pytz时区操作库、Dataclasses替代NamedTuple、Proper Logging替代print语句进行日志记录、f-strings替代其他字符串格式化方法、Tomllib库处理TOML文件等。

关键观点总结

关键观点1: Pathlib替代os.path

Pathlib是Python标准库的一部分,提供了面向对象的文件系统操作方式,更易于读取和编写。

关键观点2: Secrets替代os.urandom

Secrets模块提供安全的随机数生成,适用于生成密码等安全令牌。

关键观点3: Zoneinfo替代pytz时区操作库

Zoneinfo是Python 3.9中的新库,用于时区操作,更易于使用。

关键观点4: Dataclasses替代NamedTuple

Dataclasses提供可变的、自带魔法方法的类,支持默认值和继承等特性,是namedtuple的替代品。

关键观点5: Proper Logging替代print进行日志记录

使用Proper Logging进行日志记录,可以提供更好的调试体验,支持自定义日志库以记录到不同的位置、更改日志级别等。

关键观点6: f-strings替代其他字符串格式化方法

f-strings格式化的字符串文字更自然、可读性更强,是前面提到的选项中最快的。

关键观点7: Tomllib处理TOML文件

Tomllib是Python 3.11中的内置库,用于处理TOML文件,基于tomli包。

关键观点8: Setuptools替代distutils

由于Distutils已弃用,建议使用Setuptools来替换所有distutils的函数或对象。


文章预览

这是「进击的Coder」的第 949  篇技术分享 来源:Python 编程时光 “ 阅读本文大概需要 6 分钟。 ” 随着每个 Python 版本的发布,都会添加新模块,并引入新的更好的做事方式,虽然我们都习惯了使用好的旧 Python 库和某些做事方式,但现在也时候升级并利用新的和改进的模块及其特性了。 Pathlib 而不是 OS pathlib 绝对是 Python 标准库中最近添加的更大的内容之一, 自 Python 3.4 以来,它一直是标准库的一部分,但很多人仍然使用 os 模块进行文件系统操作。 然而,pathlib 与旧的 os.path 相比具有许多优点 - 虽然 os 模块以原始字符串格式表示路径,但 pathlib 使用面向对象的样式,这使得它更具可读性和编写自然: from  pathlib  import  Path import  os.path # 老方式 two_dirs_up = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) # 新方式,可读性强 two_dirs_up = Path(__fi ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览