Python学习记录3-函数参数详解
参数详解
- 参数分类
- 普通参数
- 默认参数
- 关键字参数
- 收集参数
- 普通参数
- 定义时直接定义变量名
- 调用的时候直接把变量或者值放入指定位置
def 函数名 (参数1, 参数2, ....):
函数体
# 调用
函数名 (value1, value2, ....)
# 调用的时候,具体值参考的是位置,按位置赋值
- 默认参数
- 形参带有默认值
- 调用的时候,如果没有对相应形参赋值,则使用默认值
def func_name(p1=v1, p2=v2, ....):
func_block
#调用1
func_name()
#调用2
value1 = 100
value2 = 200
func_name(value1,value2)
# 默认参数实例
# 根据性别输出不同语句
>>> def reg(name, age, gender="male"):
if gender == "male":
print("{0} is {1},and he is a boy".format(name,age))
else:
print("{0} is {1},and she is a girl".format(name,age))
>>> reg("小明", 21) #第三个参数gender没有值,所以用的是默认值male
>>> reg("小红", 22, "female") #第三个参数有值,所以用的输入的值female
输出:
小明 is 21,and he is a boy
小红 is 22,and she is a girl
- 关键字参数
- 语法
- 比较麻烦,但也有好处:
- 不容易混淆,一般实参和形参只是按照位置一一对应即可,容易出错
- 使用关键字参数,可以不考虑参数位置
def func(p1=v1, p2=v2,... ):
func_body
调用函数:
func(p1=value1, p2=value2,....)
# 关键字参数案例
>>> def stu(name, age, addr):
print("I am a Student")
print("我是{0},我今年{1}岁了,我住在{2}".format(name, age, addr))
n = "哈哈"
a = 20
addr = "地球"
# 普通参数,只按照位置传递,容易出错
stu(a, n, addr)
>>> def stu_key(name, age, addr):
print("I am a Student")
print("我是{0},我今年{1}岁了,我住在{2}".format(name, age, addr))
>>> n = "嘻嘻"
>>> a = 20
>>> addr = "地球"
# 关键字参数,可以不按函数定义时参数的顺序
>>> stu_key(age=a, name=n, addr=addr)
输出:
I am a Student
我是嘻嘻,我今年20岁了,我住在地球
总结
国庆假期不知不觉就过完了,今天是国庆后上班的第一天,回家过的这几天也是非常舒服,出来这么久还是感觉家里好。节后第一天上班,要整理的东西也是比较的多,但是为了坚持学习,还是对一些知识点进行了总结和复习,我也会继续努力!
Python学习记录3-函数参数详解的更多相关文章
- Python函数参数详解
Python函数参数详解 形参与实参 什么是形参 在定义函数阶段定义的参数称之为形式参数,简称形参,相当于变量名. 什么是实参 在调用函数阶段传入的值称为实际参数,简称实参.相当于"变量值& ...
- Python学习二:词典基础详解
作者:NiceCui 本文谢绝转载,如需转载需征得作者本人同意,谢谢. 本文链接:http://www.cnblogs.com/NiceCui/p/7862377.html 邮箱:moyi@moyib ...
- PHP date函数参数详解
PHP date函数参数详解 作者: 字体:[增加 减小] 类型:转载 time()在PHP中是得到一个数字,这个数字表示从1970-01-01到现在共走了多少秒,很奇怪吧 不过这样方便计 ...
- Python学习一:序列基础详解
作者:NiceCui 本文谢绝转载,如需转载需征得作者本人同意,谢谢. 本文链接:http://www.cnblogs.com/NiceCui/p/7858473.html 邮箱:moyi@moyib ...
- Go语言Slice作为函数参数详解
Go语言Slice作为函数参数详解 前言 首先要明确Go语言中实质只有值传递,引用传递和指针传递是相对于参数类型来说. 个人认为上诉的结论不对,把引用类型看做对指针的封装,一般封装为结构体,结构体是值 ...
- 【集成学习】sklearn中xgboot模块中fit函数参数详解(fit model for train data)
参数解释,后续补上. # -*- coding: utf-8 -*- """ ############################################## ...
- python中os模块函数方法详解最全最新
os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 import os print(os.getcwd()) os.chdir("dirname") 改 ...
- 菜鸟学习-C语言函数参数传递详解-结构体与数组 分类: C/C++ Nginx 2015-07-14 10:24 89人阅读 评论(0) 收藏
C语言中结构体作为函数参数,有两种方式:传值和传址. 1.传值时结构体参数会被拷贝一份,在函数体内修改结构体参数成员的值实际上是修改调用参数的一个临时拷贝的成员的值,这不会影响到调用参数.在这种情况下 ...
- Python3学习笔记(十一):函数参数详解
一.位置参数 根据参数的位置来传递参数,调用函数时,传递的参数顺序和个数必须和定义时完全一致 # 定义函数 def man(name, age): print("My name is %s, ...
随机推荐
- spark入门备忘---1
import org.apache.spark.{SparkContext, SparkConf} import scala.math.random /** * 利用spark进行圆周率的计算 */ ...
- PAT 甲级 1015 Reversible Primes (20 分) (进制转换和素数判断(错因为忘了=))
1015 Reversible Primes (20 分) A reversible prime in any number system is a prime whose "rever ...
- PAT 甲级 1012 The Best Rank (25 分)(结构体排序)
题意: 为了评估我们第一年的CS专业学生的表现,我们只考虑他们的三个课程的成绩:C - C编程语言,M - 数学(微积分或线性代数)和E - 英语.同时,我们鼓励学生强调自己的最优秀队伍 - 也就是说 ...
- 比特币 难度值(difficulty)
难度(Difficulty) 难度是对挖矿困难程度的度量,即指:计算符合给定目标的一个HASH值的困难程度.比特币网络有一个全局的区块难度,有效的区域必须有一个HASH值,该HASH值必须小于给定的目 ...
- MLN Alchemy
1. 前言: 本文主要参考Alchemy Tutorial, washington主页上挂出的所有Alchemy项目(包括Alchemy1.0, Alchemy2.0, AlchemyLite)都无法 ...
- CSRF利用
使用burpsuite的csrf poc选项,可以生成HTML代码 json CSRF flash + 307跳转 https://github.com/sp1d3r/swf_json_csrf
- 华为ENSP命令大全
实验命令___ENSP 一. 生成树STP 注:桥优先级取值越小,则优先级越高,通过配置优先级(开销值cost)可控制根桥选举.当根桥发生故障则会选举新的根桥,当故障恢复根桥重新选举.通过设置端口 ...
- hadoop java VM 参数设置 默认native栈大小设置
问题总结: 程序栈太小,64位机器的栈大小默认比32位的大,将程序从64放到32中执行则报错,需要修改初始堆栈大小 (.so库中提供两个函数接口,一个里面使用的是尺寸较大的图像,另一个处理的图像很小, ...
- cenos 防火墙操作
iptables防火墙 1.基本操作 # 查看防火墙状态 service iptables status # 停止防火墙 service iptables stop # 启动防火墙 servi ...
- storm1.2.2集群搭建
一.下载.解压 二.配置安装 1.配置分配 1.zk的集群分别在:192.168.100.143 192.168.100.144 192.168.100.145 三台服务器上, zk集群的安装说见 ...