PEP570新语法:之只接受位置参数的示例分析
发表于:2025-11-08 作者:千家信息网编辑
千家信息网最后更新 2025年11月08日,这篇文章将为大家详细讲解有关PEP570新语法:之只接受位置参数的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。最近 PEP 570被接受了,其实要加的这个
千家信息网最后更新 2025年11月08日PEP570新语法:之只接受位置参数的示例分析
这篇文章将为大家详细讲解有关PEP570新语法:之只接受位置参数的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
最近 PEP 570被接受了,其实要加的这个Positional-Only Parameters原来在内置的C函数上有很多都用到了:
In : __builtin__.evalOut:In : __builtin__.lenOut: In : __builtin__.divmodOut:
看它们的签名,最后都有一个/,/用途是 在/左面的这些参数,只能是位置参数(不能是关键字参数):
In : divmod(3, 2)Out: (1, 1)In : divmod(x=3, y=2)---------------------------------------------------------------------------TypeError Traceback (most recent call last)in ----> 1 divmod(x=3, y=2)TypeError: divmod() takes no keyword arguments
如果使用关键字参数的方式,会报错。当然这个错有点莫名其妙。为什么要搞Positional-Only呢?就是强制使用者用位置参数!
再看一个例子(bytes):
In [68]: bytes??Init signature: bytes(self, /, *args, **kwargs)Docstring:bytes(iterable_of_ints) -> bytesbytes(string, encoding[, errors]) -> bytesbytes(bytes_or_buffer) -> immutable copy of bytes_or_bufferbytes(int) -> bytes object of size given by the parameter initialized with null bytesbytes() -> empty bytes object...In : bytes('哈哈', 'utf-8')Out: b'\xe5\x93\x88\xe5\x93\x88'In : bytes('哈哈', encoding='utf-8')Out: b'\xe5\x93\x88\xe5\x93\x88'虽然bytes也有/,但是它只约束了左边的参数(这里只有一个self),之后的encoding可以用位置参数,也能用关键字参数。
通过PEP 570,我们写的Python代码也可以支持了。你可以这样写:
def name(p1, p2, /, p_or_kw, *, kw):def name(p1, p2=None, /, p_or_kw=None, *, kw):def name(p1, p2=None, /, *, kw):def name(p1, p2=None, /):def name(p1, p2, /, p_or_kw):def name(p1, p2, /):
在 Python 3.8 时我们就能使用这个新语法啦。现在可以通过 PEP里面的几个简单例子,感受一下它的用法,期待哟
关于"PEP570新语法:之只接受位置参数的示例分析"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
参数
位置
语法
关键
关键字
篇文章
示例
分析
例子
更多
不错
实用
莫名其妙
代码
使用者
内容
函数
只有
可以通过
就是
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全知识答题初中
数据库的主键和外键具体应用
2021年世界网络安全大会
幻塔新手去哪个服务器
国家网络安全日宣传月主题
网络课程软件开发方案
膳食数据库建立的第一步
数据库如何自动覆盖
安徽一七网络技术有限公司
网络技术刊物
册亨软件开发专业
浪潮服务器不识别硬盘
东营定制软件开发推荐
亚马逊云服务器购买
sql数据库如何设置外键约束
房地产克尔瑞数据库
成都岳治资水软件开发工作室
2018河北网络安全
当前网络安全存在的主要问题
服务器开远程桌面会中毒吗
战地1服务器没显示ping
服务器基地为何选贵州云主机
cad用服务器还是台式机好
数据库更新重启服务
定时自动截屏软件开发
管理控制中心服务器的作用
可校验数据库表中数据的工具
服务器ip限制
武汉亿网网络技术有限公司
服务器镜像文件