第三十回 张都监血溅鸳鸯楼 武行者夜走蜈蚣岭-python可接受任意数量参数的函数

武松回到孟州城,来到张都监后花园墙外,这是一个马院,问清楚后槽张团练他们三人还在鸳鸯楼吃酒,直接一刀杀了。武松从后门这里爬过墙,来到了厨房,将两个还在服侍的丫环杀了。

武松认得路,蹑手蹑脚上来了鸳鸯楼,听见蒋门神说:多亏了相公给小人报了仇。张都监说:不是看在兄弟张团练面上,谁肯干这事?你虽然花了点钱,但是能帮你除掉他。张团练也说:四个对付他一个,稳了。

武松是谁,武松简直是水浒武力天花板。同样的,python也是非常优秀的编程语言,比方如下小技巧:

python可接受任意数量参数的函数

本部分内容来自:7.1 可接受任意数量参数的函数 — python3-cookbook 2.0.0 文档

问题

你想构造一个可接受任意数量参数的函数。

解决方案

为了能让一个函数接受任意数量的位置参数,可以使用一个*参数。例如:

def avg(first, *rest):return (first + sum(rest)) / (1 + len(rest))# Sample use
avg(1, 2) # 1.5
avg(1, 2, 3, 4) # 2.5

在这个例子中,rest是由所有其他位置参数组成的元组。然后我们在代码中把它当成了一个序列来进行后续的计算。

为了接受任意数量的关键字参数,使用一个以**开头的参数。比如:

import htmldef make_element(name, value, **attrs):keyvals = [' %s="%s"' % item for item in attrs.items()]attr_str = ''.join(keyvals)element = '<{name}{attrs}>{value}</{name}>'.format(name=name,attrs=attr_str,value=html.escape(value))return element# Example
# Creates '<item size="large" quantity="6">Albatross</item>'
make_element('item', 'Albatross', size='large', quantity=6)# Creates '<p>&lt;spam&gt;</p>'
make_element('p', '<spam>')

在这里,attrs是一个包含所有被传入进来的关键字参数的字典。

如果你还希望某个函数能同时接受任意数量的位置参数和关键字参数,可以同时使用*和**。比如:

def anyargs(*args, **kwargs):print(args) # A tupleprint(kwargs) # A dict

使用这个函数时,所有位置参数会被放到args元组中,所有关键字参数会被放到字典kwargs中。

武松听了,火冒三丈,进门对着蒋门神就劈,把椅子都砍翻了。张都监才来得及动脚,也被武松齐耳朵根连脖子砍了一刀。张团练提起一把椅子抡过来,武松接住,一下把人推倒,一刀就把头割下来了。然后再把蒋门神和张都监的头也割下来,在墙上用血写下:杀人者,打虎武松也!

武松把桌上器皿踩扁,揣几件在怀里。然后把夫人连两个亲随,玉兰连两个小的都一起杀了。

武松连夜越城逃走,进入一个小小的古庙,想躺下休息,结果被挠钩勾住,然后被人绑了。多亏遇到了张青孙二娘两口子,武松就把醉打蒋门神,大闹飞云浦,血溅鸳鸯楼讲了一遍。

武松在张青家休息了三五天,张青推荐武松去二龙山。走之前给了武松一个铁戒箍,一身衣服,一本度牒,一串一百单八颗人头骨的佛珠串,武松就穿扮上,特别合身,张青孙二娘都说这简直是前世注定的。

武松离开了十字坡,来到了蜈蚣岭,发现坟地里寺庙不正常。

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

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Photoshop 中的“彩蛋”

在 Photoshop 中隐藏了几个“彩蛋” Easter Eggs&#xff0c;是开发者留下的小秘密或玩笑功能&#xff0c;也许是他们在紧张的开发过程中的一种自我调节吧&#xff0c;就如复活节彩蛋一样&#xff0c;同样也可以给 Photoshop 的用户们带来一点小“惊喜”。 这些彩蛋通常以有趣的…

C语言—数组一维(含冒泡排序)

1.用数组存储10个整型数&#xff0c;通过键盘输入一个数&#xff0c;找出该数在数组中的下标值&#xff1b; /*1.用数组存储10个整型数&#xff0c;通过键盘输入一个数&#xff0c;找出该数在数组中的下标值&#xff1b;*/#include <stdio.h>int main(void) {int nums[…

Java实现贫困地区人口信息管理系统 JAVA+Vue+SpringBoot+MySQL

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 人口信息管理模块2.2 精准扶贫管理模块2.3 特殊群体管理模块2.4 案件信息管理模块2.5 物资补助模块 三、系统设计3.1 用例设计3.2 数据库设计3.2.1 人口表3.2.2 扶贫表3.2.3 特殊群体表3.2.4 案件表3.2.5 物资补助表 四…

详解Python中的str.format方法

字符串的内置方法大致有40来个&#xff0c;但是一些常用的其实就那么20几个&#xff0c;而且里面还有类似的用法&#xff0c;区分度高比如&#xff1a;isalpha,isalnum,isdigit&#xff0c;还有一些无时不刻都会用到的split切分&#xff0c;join拼接&#xff0c;strip首尾去指定…

深度学习的新进展:探索人工智能的未来

文章目录 &#x1f4d1;引言深度学习技术概述计算机视觉领域的深度应用自然语言处理的深度革命跨领域应用的深度拓展深度学习的挑战与未来展望结语 &#x1f4d1;引言 在科技日新月异的今天&#xff0c;深度学习作为人工智能领域的一颗璀璨明珠&#xff0c;正在引领着技术创新…

Nvidia 推出了本地版聊天 Chat with RTX;OpenAI联创Karpathy宣布离职专注个人项目

&#x1f989; AI新闻 Nvidia 推出了本地版聊天 Chat with RTX 摘要&#xff1a;英伟达最近发布了名为“Chat with RTX”的Demo版个性化AI聊天机器人&#xff0c;适用于Windows平台&#xff0c;需要Nvidia的30系/40系显卡&#xff0c;显存至少为8GB&#xff0c;系统配置包括1…

极市平台 | 16个图像分类方向开源数据集资源汇总(附下载链接,建议收藏!)

本文来源公众号“极市平台”&#xff0c;仅用于学术分享&#xff0c;侵权删&#xff0c;干货满满。 原文链接&#xff1a;16个图像分类方向开源数据集资源汇总&#xff08;附下载链接&#xff09; 本文汇总了16个图像分类相关的开源数据集&#xff0c;均附有下载链接。要构建…

Shell 学习笔记(三)-shell变量

Shell 语言是一种动态类型和弱类型语言, 因此,在Shell中无需显示地声明变量, 且变量的类型会根据不同的操作符而发生变化. 静态类型语言: 在程序编译期间就确定变量类型的语言, 如java, C等 动态类型语言: 在程序运行期间才确定变量类型的语言, 如PHP, Python等. 一 shell变量…

姿态传感器MPU6050模块的基本使用总结

以下两篇文章可作为参考&#xff1a; 姿态传感器MPU6050原理及应用超详细讲解 - 采芯网 基于STM32的四旋翼无人机项目&#xff08;二&#xff09;&#xff1a;MPU6050姿态解算&#xff08;含上位机3D姿态显示教学&#xff09;-CSDN博客 基本介绍 随着科技的发展&#xff0c;我们…

保安员题不会怎么搜答案?推荐你使用这5个公众号和工具 #知识分享#微信#经验分享

大学生搜题软件是一种方便快捷的工具&#xff0c;可以帮助大学生们在解答问题和完成作业时节省时间和精力。 1.灵兔搜题 这是一个公众号 题库包括四六级答案、各学校往期课后答案、期末考试题等&#xff0c;使用比较简单。 下方附上一些测试的试题及答案 1、公民应当遵守下…

【MySQL】外键约束的删除和更新总结

&#x1f308;个人主页: Aileen_0v0 &#x1f525;热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 ​&#x1f4ab;个人格言:“没有罗马,那就自己创造罗马~” #mermaid-svg-7niJLSFaPo0wso60 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-siz…