第四十五回 病关索大闹翠屏山 拚命三火烧祝家店-Python函数接受任意关键字参数

news2025/2/25 18:16:05

官府得到上报,被杀死的僧人是报恩寺的裴如海,旁边的头陀是寺后面的人叫胡道。孔目说他们两个互相杀死,没有其他人什么事,这件事也就过去了。

杨雄听说了这件事,知道是石秀干的,找石秀为自己错怪他道歉。两人商量了后面的行动。

第二天杨雄带着潘巧云和丫环,骗她们到东门外岳庙上香。三人上了翠屏山,到了一处古墓里,石秀出来与潘巧云对质,潘巧云无言以对。

杨雄问丫头迎儿,迎儿就把事情前前后后都说了。然后再问潘巧云,她也招了。于是杨雄就把这两人都杀了,然后跟石秀商量后面怎么办,石秀提议去梁山入伙。正巧鼓上蚤石迁也在,于是三人结伴一起去投梁山。

杨雄石秀做事就像函数调用一样有条理:

Python函数接受任意关键字参数

在Python中,一个函数可以接受任意数量的位置参数,这通常是通过在函数定义中使用一个特殊的语法来实现的,即使用星号(*)前缀。当函数定义中包含一个带有星号前缀的参数时,该函数就可以接受任意数量的位置参数,这些参数在函数内部会被收集到一个元组中。

def avg(first, *rest):
    print(first, rest)
    return (first + sum(rest)) / (1 + len(rest))

# Sample use
avg(1, 2) # 1.5
avg(1, 2, 3, 4) # 2.5

当我们编写函数时,有时候我们希望函数能够接受多个关键字输入,以便我们可以根据需要传递不同的参数。在Python中,我们可以通过使用** 开头的参数来实现。比如**attrs允许我们将不定数量的关键字参数传递给函数。它会将这些参数收集到一个字典中,其中关键字是字典的键,对应的值是关键字参数的值。以下是一个使用多个关键字输入的示例:

 

def make_element(name, year, **attrs):
    print("name:", name, "year:", year)
    for i in attrs:
        print(i, ":", attrs[i])


make_element(name="Jining", year="2024", attrsA="Qufu", attrsB="Liangshan")

在Python中,我们可以定义一个只接受关键字参数的函数,这样做可以使函数调用时的参数更加清晰,避免参数位置错误的问题。下面是一个例子:

def student_info(*, name, age, grade):
    print(f"学生姓名:{name}")
    print(f"学生年龄:{age}")
    print(f"学生年级:{grade}")

student_info(name="李华", age=14, grade="八年级")
# 如果像下面这样输入参数会报错
# student_info( "李华",  14,  "八年级")

 

杨雄,石秀,时迁三人到了独龙山,投宿一家酒店,石迁偷了店里的打鸣报晓的鸡吃,与店小二产生争执。三人打跑了店家,放火烧了房子。后面打斗中,石迁被抓住了。

杨雄石秀只好逃走,又遇到一个阔脸方腮,眼鲜耳大,貌丑形粗的大汉,大汉看见杨雄就拜,说:恩人怎么到这里来了?

欲知后事如何,且听下回分解。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1477612.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

杭电OJ 2030 汉字统计 C++

#include <string> #include <iostream> using namespace std; int main() { int n; string s; cin >> n; getchar(); while (n--) { getline(cin, s); //读取一行 int count 0; for (int i 0; i < s.len…

鸿蒙Harmony应用开发—ArkTS声明式开发(触摸事件)

当手指在组件上按下、滑动、抬起时触发。 说明&#xff1a; 从API Version 7开始支持。后续版本如有新增内容&#xff0c;则采用上角标单独标记该内容的起始版本。 onTouch onTouch(event: (event: TouchEvent) > void) 手指触摸动作触发该回调。 卡片能力&#xff1a; 从…

如何在Linux使用Docker部署Nexus容器并实现公网访问本地仓库【内网穿透】

文章目录 1. Docker安装Nexus2. 本地访问Nexus3. Linux安装Cpolar4. 配置Nexus界面公网地址5. 远程访问 Nexus界面6. 固定Nexus公网地址7. 固定地址访问Nexus Nexus是一个仓库管理工具&#xff0c;用于管理和组织软件构建过程中的依赖项和构件。它与Maven密切相关&#xff0c;可…

正向代理的反爬虫与防DDoS攻击:保护网站免受恶意行为

目录 前言 一、正向代理的原理 二、正向代理的反爬虫功能 1. IP地址隐藏 2. 请求多样化 三、正向代理的防DDoS攻击功能 1. 均衡负载 2. IP过滤 结论 前言 在当前互联网环境下&#xff0c;网站常常受到各种恶意行为的侵袭&#xff0c;其中包括爬虫和DDoS攻击。这些行为…

GEE:基于Landsat5/7/8/9数据提取一个点的NDVI时间序列(1986-2024)

作者:CSDN @ _养乐多_ 本文将介绍,基于Landsat5/7/8/9数据提取一个点的NDVI时间序列,时间序列数据可以是1986-2024年所有可用数据,也可以是月度合成、年度合成或者指定间隔合成的时间序列。 结果如下图所示, 文章目录 一、代码框架二、代码链接三、完整代码一、代码框架…

【JavaEE进阶】 Spring AOP详解

文章目录 &#x1f38b;前言&#x1f38d;Spring AOP核心概念&#x1f6a9;切点(Pointcut)&#x1f6a9;连接点(Join Point)&#x1f6a9;通知(Advice)&#x1f6a9;切面(Aspect) &#x1f340;通知类型&#x1f6a9;注意事项 &#x1f332;PointCut&#x1f384;切面优先级Ord…

使用分布式锁解决分布式环境下的并发安全问题

分布式锁 分布式锁的基本概念 在我们进行单机应用开发&#xff0c;涉及并发同步的时候&#xff0c;我们往往采用synchronized或者Lock的方式来解决多线程间的代码同步问题&#xff0c;这时多线程的运行都是在同一个JVM之下。但当我们的应用是分布式集群工作的情况下&#xff…

LeetCode 2120.执行所有后缀指令

现有一个 n x n 大小的网格&#xff0c;左上角单元格坐标 (0, 0) &#xff0c;右下角单元格坐标 (n - 1, n - 1) 。给你整数 n 和一个整数数组 startPos &#xff0c;其中 startPos [startrow, startcol] 表示机器人最开始在坐标为 (startrow, startcol) 的单元格上。 另给你…

如何选择合适的汽车芯片ERP系统?

随着汽车产业的飞速发展&#xff0c;汽车芯片作为关键组件&#xff0c;其管理变得愈发重要。为了高效管理汽车芯片的生产、销售、库存等各个环节&#xff0c;许多企业开始引入汽车芯片ERP(企业资源规划)系统。那么&#xff0c;如何选择合适的汽车芯片ERP系统呢? 明确需求是关键…

vue - - - - - vue3使用draggable拖拽组件

vue3使用draggable拖拽组件 一、组件安装二、插件使用三、遇到的问题1. missing required prop&#xff1a; “itemKey” 一、组件安装 yarn add vuedraggablenext // or npm i -S vuedraggablenext二、插件使用 <template><draggableitem-key"id"class&q…

STM32F103学习笔记(七) PWR电源管理(原理篇)

目录 1. PWR电源管理简介 2. STM32F103的PWR模块概述 2.1 PWR模块的基本工作原理 2.2 电源管理的功能和特点 3. PWR模块的常见应用场景 4. 常见问题与解决方案 1. PWR电源管理简介 PWR&#xff08;Power&#xff09;模块是STM32F103系列微控制器中的一个重要组成部分&…

【C语言】while循环语句

&#x1f388;个人主页&#xff1a;豌豆射手^ &#x1f389;欢迎 &#x1f44d;点赞✍评论⭐收藏 &#x1f917;收录专栏&#xff1a;C语言 &#x1f91d;希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出指正&#xff0c;让我们共同学习、交流进步&…

基础小白快速入门Python---->作用域是个啥?

在Python代码中&#xff0c;我们经常会使用到一个名词&#xff0c;作用域&#xff0c;那么&#xff0c;作用域究竟是个啥&#xff1f; 不同的编程语言中&#xff0c;作用域搭配使用的模块或者具体名称可能会略有差别 作用域是个啥&#xff1f; 作用域&#xff0c;就像是我们学…

【MySQL】学习多表查询和笛卡尔积 - 副本

](https://img-blog.csdnimg.cn/21dd41dce63a4f2da07b9d879ad0120b.png#pic_center) ??个人主页: ??热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 ??个人格言:“没有罗马,那就自己创造罗马~” #mermaid-svg-N8PeTKG6uLu4bJuM {font-family:“trebuchet ms”,…

安卓开发1- android stdio环境搭建

安卓开发1-android stdio环境搭建 Jdk环境搭建 1. 准备Jdk,这边已经准备好了jdk1.8.0,该文件直接使用即可 2. 系统变量添加 %JAVA_HOME%\bin JAVA_HOME 3. 系统变量&#xff0c;Path路径添加 4. 添加完成后&#xff0c;输入命令javac / java -version&#xff0c;验证环…

python实现跨进程(跨py文件)通信01

前言 项目中总会遇到数据需要跨进程通信的问题&#xff0c;今天就给大家带来一套简单的跨进程通信代码。代码分为服务端与客户端两部分。 一、server端 import multiprocessing import timedef do_socket(conn, addr, ):try:while True:if conn.poll(1) False:time.sleep(0…

JQMobile Loader Widget 遮罩层改造

最近在用jqmobile 做一个混合APP项目时候用到 jqmobile1.4.3提供的Loader Widget控件,但是这个控件本身是一个loading弹出层,这个弹出层弹出之后,用户还是可以去点击按钮,重复发送请求,为了防止重复提交,我想了两种办法, 1,在loading弹出层弹出之后,让按钮不可用.但是form表单…

SDWAN异地组网难在哪?怎么解决?

SD-WAN作为一种先进的网络技术&#xff0c;为企业提供了更加灵活和高效的网络连接方案。然而&#xff0c;在异地组网的过程中&#xff0c;SD-WAN也面临一些挑战。本文将探讨SD-WAN异地组网所面临的难题&#xff0c;并提供相应的解决方案。 挑战一&#xff1a;网络延迟和不稳定性…

五、数组——Java基础篇

五、数组 1、数组元素的遍历 1.1数组的遍历&#xff1a;将数组内的元素展现出来 1、普通for遍历&#xff1a;根据下表获取数组内的元素 2、增强for遍历&#xff1a; for&#xff08;数据元素类型 变量名&#xff1a;数组名&#xff09;{ 变量名&#xff1a;数组内的每一个值…

家庭游泳池:阳台上可安装的泳池

游泳池可根据场地大小选择安装在室内或室外&#xff0c;这种的泳池规格尺寸相对来说较大&#xff0c;较适合于大型体育场馆、小区配套、健身房等场所。这款家庭泳池与之前的不太一样&#xff0c;不论是从池体材料还是装饰面层都有着很大的差异。 该家庭泳池规格尺寸比较固定&a…