怎么使用Python3.8
这篇文章给大家分享的是有关怎么使用Python3.8的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
importlib.metadata
入口点在 Python 包中被用来做各种事情。大多数人熟悉的是console_scripts入口点,不过 Python 中的许多插件系统都使用它们。
在 Python 3.8 之前,从 Python 中读取入口点的最好方法是使用pkg_resources
,这是一个有点笨重的模块,它是setuptools
的一部分。
新的importlib.metadata
是一个内置模块,它允许访问同样的东西:
fromimportlibimportmetadataasimportlib_metadatadistribution=importlib_metadata.distribution("numpy")distribution.entry_points
[EntryPoint(name='f2py',value='numpy.f2py.f2py2e:main',group='console_scripts'),EntryPoint(name='f2py3',value='numpy.f2py.f2py2e:main',group='console_scripts'),EntryPoint(name='f2py3.9',value='numpy.f2py.f2py2e:main',group='console_scripts')]
入口点并不是importlib.metadata
允许访问的唯一东西。可以调试、报告,或者(在极端情况下)触发兼容模式,你也可以在运行时检查依赖的版本!
f"{distribution.metadata['name']}=={distribution.version}"`[/code][code]`'numpy==1.20.1'
只接受位置参数
强制关键字的参数在传达 API 作者的意图方面取得巨大成功之后,另一个空白被填补了:只接受位置参数。
特别是对于那些允许使用任意关键字的函数(例如,生成数据结构),这意味着对允许的参数名称的限制更少:
defsome_func(prefix,/,**kwargs):print(prefix,kwargs)
some_func("a_prefix",prefix="prefixkeywordvalue")
a_prefix{'prefix':'prefixkeywordvalue'}`
注意,令人困惑的是,变量prefix
的值与kwargs["prefix"]
的值不同。就像在很多地方一样,要注意小心使用这个功能。
自我调试表达式
50 多年来,print()
语句(及其在其他语言中的对应语句)一直是快速调试输出的最爱。
但是我们在打印语句方面取得了很大的进展,比如:
special_number=5print("special_number=%s"%special_number)
special_number=5
然而,自我记录的 f-strings 使它更容易明确:
print(f"{special_number=}")
special_number=5`
在 f-string 插值部分的末尾添加一个=
,可以保留字面部分,同时添加数值。
当更复杂的表达式在该部分内时,这就更有用了:
values={}print(f"{values.get('something','default')=}")
values.get('something','default')='default'
感谢各位的阅读!关于“怎么使用Python3.8”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
推荐阅读
-
Web应用从零开始,初学者友好型开发教程
-
容器化最佳实践:Docker 与 Kubernetes 在微服务架构中的协同设计
-
AWS Cloud9 使用攻略:云端 IDE 如何无缝集成 Lambda 与 S3 服务?
-
Heroku vs AWS Elastic Beanstalk:快速部署 Web 应用的平台对比
-
Kubernetes 集群部署避坑:资源调度、服务发现与滚动更新策略
-
Docker 镜像优化指南:分层构建、瘦身技巧与多阶段编译实践
-
Postman 接口测试全流程:从 API 设计到自动化测试脚本编写
-
pytest 框架进阶:自定义 fixture、插件开发与持续集成集成方案
-
JUnit 5 新特性:参数化测试、扩展模型与微服务测试实践
-
Chrome DevTools 性能分析:FPS 监控、内存快照与网络请求优化指南