Python函数/动态参数/关键字参数
1.函数
#函数语法:
#函数名规范:小谢字母开头,不同字母下划线隔开(字母数字下划线)
#def 函数名():
#函数体:希望函数做的事情
1.1.无参函数
#无参函数
def music():
print("唱着又没动听的歌声...")
#调用函数
music()
1.2.有参函数
#有参函数
def zgl_music(name): #形参
print("{0}唱着又没动听的歌声...".format(name)) zgl_music("诸葛亮")#传参:实参 #有参函数-默认参数
def speak(name,yy="中文"):
print("{0}说着{1}".format(name,yy))
speak(name="刘备")#刘备说着中文
speak("关于","阿拉伯语")#关于说着阿拉伯语
1.2.1.请把1-100的整数相加和的功能,写成一个函数
#请把1-100的整数相加和的功能,写成一个函数
def jia(sum1,sum2):
#判断sum1<sum2
if sum1<sum2:
sum = 0
for item in range(sum1,sum2+1):
sum = sum+item
print("{0}到{1}之间数字相加的结果为:{2}".format(sum1,sum2,sum))
else:
print("输入错误!") jia(1,100)
1.3.return
reruen #返回函数结果
#返回a与b的和
def sum(a,b):
return a+b #将结果返回 sum = sum(1,2)#返回的结果赋值给另一个变量
print(sum)# 3
1.3.1.无参无返
#无参无返
def sum1():
print("这是个无参无返的函数")
#调用函数
sum1()
1.3.2.有参无返
#有参无返
def sum2(a,b):
print(a+b)
#调用函数
sum2(2,3)
1.3.3.无参有返
#无参有返
def sum3():
return 10
#调用函数
sum3()
1.3.4.有参有返
#有参有返
def sum4(a,b):
return a+b
#调用函数
sum4(5,5)
1.3.5.写一个函数,检查传入列表的长度,如果大于2,那么保留前两个长度的内容,并将新内容返回
def new_list(lists):
if len(lists)>2:
return lists[0:2] a=[1,2,3,4]
print(new_list(a))
1.4.动态参数/不定长参数 *args ☆ ☆ ☆
#动态参数/不定长参数
def sum(*args): #*args arguments
print(args)#('张三', '李四', '王五', '麻六') 元组
print("张三:{0}".format(args[0]))
print("李四:{0}".format(args[1]))
print("王五:{0}".format(args[2]))
print("麻六:{0}".format(args[3])) sum("张三","李四","王五","麻六")
1.4.1.动态参数练习
#动态参数求两个数的和
#第一种
def sum1(*a):
return a[0]+a[1] print(sum1(8,9)) #第二种
def sum2(*args):
sum = 0
for item in args:
sum += item
return sum print(sum2(2,3))
1.4.1.1.补充1
#第一种
def sum2(*args,a):
sum = 0
for item in args:
sum += item
print("a = {0}".format(a))
return sum print(sum2(2,3,a=1))
输出:
a = 1
5
1.4.1.2.补充2
#第二种
def sum2(a,*args):
sum = 0
for item in args:
sum += item
print("a = {0}".format(a))
return sum print(sum2(2,3,4,5,6))
输出:
a = 2
18
1.5.关键字参数 key-value **kwargs ☆ ☆ ☆
#关键字参数 key-value **kwargs
def kw_sum(**kwargs):# key=value
print(kwargs) a={"name":"张三"}
kw_sum(k=1,y=2,m=3) #{'k': 1, 'y': 2, 'm': 3}
Python函数/动态参数/关键字参数的更多相关文章
- [python 函数学习篇] 关键字参数
函数可以通过 关键字参数 的形式来调用,形如 keyword = value .例如,以下的函数: def parrot(voltage, state='a stiff', action='voom' ...
- Python——函数的命名关键字参数
命名关键字参数 对于关键字参数,函数的调用者可以传入任意不受限制的关键字参数.至于到底传入了哪些,就需要在函数内部通过kw检查. 仍以person()函数为例,我们希望检查是否有city和job参数: ...
- python函数 位置参数,关键字参数,可变参数优先级
def fun(arg,args=1,*arg,**keywords): python 一共有这四类参数,第一类最常见,不用多说,第二类,关键字参数,python能通过关键字找到参数,python函数 ...
- Python——函数中的关键字参数
关键字参数 可变参数允许你传入0个或任意个参数,这些可变参数在函数调用时自动组装为一个tuple.而关键字参数允许你传入0个或任意个含参数名的参数,这些关键字参数在函数内部自动组装为一个dict.请看 ...
- python函数中的关键字参数
关键字参数: 就是在形式参数中必须要提供”传递参数名=传递参数值” 位置参数: 仅仅只有参数名 特点:1.位置参数只能出现在关键字参数之前,不管是在行参还是实参中. 2.关键字参数在调用时(实参)中 ...
- Python函数的定义、参数传入与函数的调用
作为计算机代码的一种抽象方式,函数在Python中扮演了极为重要的角色.今天给大家介绍Python函数的定义.参数的传入以及调用方式.其中函数参数的传入方式为本节重点内容.Python函数的参数形式包 ...
- Python星号*与**用法分析 What does ** (double star/asterisk) and * (star/asterisk) do for parameters? 必选参数 默认参数 可变参数 关键字参数
python中*号**的区别 - CSDN博客 https://blog.csdn.net/qq_26815677/article/details/78091452 定义可变参数和定义 list 或 ...
- python 函数动态参数,名称空间,global,nonlocal
##################################总结######################################动态参数 *args:位置参数动态传参,接收到的是元 ...
- python 函数 动态参数 和嵌套
1.动态参数 是可以接收任意的参数.一种方式, 1,位置的动态传参, 写法是: *参数名 接收的参数是tuple类型举个例子:def yue(*food): print(food)yue(" ...
- python函数动态参数详解
Python的动态参数: 1,参数前一个"*":在函数中会把传的参数转成一个元组. def func (*args): print(args) func(123,1,2,'a') ...
随机推荐
- nginx+gunicorn部署Django项目
实际采用的nginx.conf文件内容: server { charset utf-8; listen 80; server_name ip; access_log /webapps/project/ ...
- vue中使用html video标签,写中间暂停图标
一篇汇总video事件的文章,方便查阅: https://blog.csdn.net/xuehu837769474/article/details/107532487 html部分 <div c ...
- java基础-冒泡排序以及稀疏数组
java基础 以下内容为本人的学习笔记,如需要转载,请声明原文链接 https://www.cnblogs.com/lyh1024/p/16720908.html Ø 冒泡排序原理: 比较数组中, ...
- POJ1734 Sightseeing trip (Floyd求最小环)
学习了一下用Floyd求最小环,思路还是比较清晰的. 1 #include<iostream> 2 #include<cstdio> 3 #include<cstring ...
- Mapper 实体转换Entiy to Dto
实际使用中发现很多问题 如果用EFcore 框架,这个表达式树生成一个新的实体导致EFcore 跟踪失败!/// <summary> /// 生成表达式目录树 泛型缓存 /// </ ...
- Java递归查找层级文件夹下特定内容的文件
递归查找文件 引言 或许是文件太多,想找某个文件又忘记放哪了;又或者是项目改造,需要将外部调用接口进行改造,项目太多,又无法排查.那么怎么快速找到自己想要的内容就是一件值得思考的事情了. 根据特定内容 ...
- 在vue中的form表单中下拉框中的数据来自数据库查询到的数据
文章目录 1.实现的效果: 2.前端html代码 3.js中的代码 4.后端的方法 1.实现的效果: 增加一个新的类型到数据库 2.前端html代码 需要注意的部分:prop后边是表单中的字段 v-m ...
- F118校准(二)-- 操作步骤(使用PX01 PG点屏,并使用PX01 PG校准F118)
1. 准备工作 硬件连接: CA310通过USB线材连接PC PX01通过USB线材连接PC F118通过灰排线连接PX01左上角的GPIO扩展口(如下图所示) LCM连接PX01 启动LcdTool ...
- Mybatis 报错Mapper method 'xxx' has an unsupported return type
报错原因: 出现这种错误,说明sql语句执行成功,只是返回类型出了问题. 解决方法: insert.delete.update操作默认返回一个int类型的整数,将增删改的接口改成int或者void即可 ...
- python 爬虫 TCL SSL 安全证书问题
其实很复杂 但也很简单 只需要在requests爬虫编写前 加上这句话 requests.packages.urllib3.util.ssl_.DEFAULT_CIPHERS = 'DH+AES:RS ...