千家信息网

Python函数参数匹配模型规则keyword-only参数是什么

发表于:2025-11-12 作者:千家信息网编辑
千家信息网最后更新 2025年11月12日,这篇文章将为大家详细讲解有关Python函数参数匹配模型规则keyword-only参数是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。Pytho
千家信息网最后更新 2025年11月12日Python函数参数匹配模型规则keyword-only参数是什么

这篇文章将为大家详细讲解有关Python函数参数匹配模型规则keyword-only参数是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

Python函数参数匹配模型通用规则keyword-only参数

概述

Python3对函数参数的排序规则更加通用化了,即Python3 keyword-only参数,该参数即为必须只按照关键字传递而不会有一个位置参数来填充的参数。该规则在处理人一多个参数是很有用的。

keyword-only

kword_only(1, 2, 3, c=4)print('-' * 20)kword_only(a=1, c=3)

示例结果:

1 (2, 3) 4--------------------1 () 3

在*args之后的参数都需要在调用中使用关键字的方式传递,否则会抛出异常。

def kword_only(a, *b, c): print(a, b, c)kword_only(1, 2, 3)

异常结果:

 kword_only(1, 2, 3)TypeError: kword_only() missing 1 required keyword-only argument: 'c'

我们也可以在参数列表中使用一个*字符,表示函数不会接受变量长度的参数列表,而是要求*后面的参数都需要使用关键字参数的方式传递。

def kword_only(a, *, b, c): print(a, b, c)kword_only(1, b=2, c=3)print('-'*20)kword_only(b=2, c=3, a=1)

示例结果:

1 2 3--------------------1 2 3

我们可以看到a可以利用位置参数进行传递,但是b、c必须通过关键字参数传递,否则就会抛出异常。

def kword_only(a, *, b, c): print(a, b, c)kword_only(1, 2, 3)

异常结果:

 kword_only(1, 2, 3)TypeError: kword_only() takes 1 positional argument but 3 were given

当然我们,可以通过对keyword-only参数使用默认值,这样例中的a仍可以通过位置参数或者关键字参数传递,而b、c就是可选的了,当然如果需要传递的话仍然是要利用关键字参数进行传递的。

def kword_only(a, *, b=2, c=3): print(a, b, c)kword_only(1)print('-'*20)kword_only(a=1)print('-'*20)kword_only(b=22, c=33, a=11)

示例结果:

1 2 3--------------------1 2 3--------------------11 22 33

更多的Python学习教程晚些会继续为大家更新,或者你们有什么想学想看的Python学习教程也可以留言哦!

关于Python函数参数匹配模型规则keyword-only参数是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

参数 关键 关键字 函数 规则 结果 模型 位置 更多 示例 内容 可以通过 学习教程 教程 文章 方式 知识 篇文章 学习 不错 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 数据库求各院系男女生人数 网络安全诈骗题库 dns 服务器损坏 安卓软件开发学习心得 徐汇区网络技术服务口碑推荐 三年级小学生网络安全小报 川大网络安全学院院长 泰州企业软件开发资费 科技发展对互联网的影响 金融软件开发的公司有哪些 5g网络技术上的成熟 数据库审计和日志审计系统价格 海康视频管理服务器价格 关于5G时代网络安全的论文 邮件服务器如何增加邮箱 广州大专生计算机网络技术招聘 武装突袭3进不了僵尸服务器 软件开发项目遇到的问题 网络安全最新参考文献及参考内容 云服务器年 收费聊天软件开发 淄川染色软件开发价格 拼多多服务器图片 川大网络安全学院院长 儋州软件开发的人 简述常见的网络安全的基本问题 大型软件开发的主要工作 心动网络安全部门 获取服务器版本信息失败怎么办 无锡软件开发的费用
0