Python学习笔记(11)- 函数(1)
来源:互联网 发布:中国科学院科学数据库 编辑:程序博客网 时间:2024/06/15 13:21
- 定义函数
def greet(): print('hello.')greet()
- 传递参数
def greet(user): print('hello , ' + user.title())greet('lily')
- 实参和形参
在定义函数的时候用的user就是形参——函数完成其工作需要的信息。
在调用函数的时候用的’lily’就是实参——函数在调用函数时需要传递给函数的信息,这个值被储存在形参user中。 - 位置实参
当一个函数的形参个数不止一个的时候,在调用函数的时候就需要注意函数的位置了。
def describe_pet(pet_type,pet_name): print('I hava a ' + pet_type) ptint('It`s name is ' + pet_name)describe_pet('dog','maomao')
如果交换形参的位置,describe_pet(‘maomao’,’dog’)打印出来的语句就会出现我们不想看到的结果。
- 关键字实参
关键字实参是传递给函数的名称—值对。你直接在实参中将名称和值关联起来了,因此向函数传递实参时不会混淆。关键字实参让你无需考虑函数调用中的实参顺序,还清楚地指出了函数调用中各个值的用途。
describe_pet(pet_name = 'maomao',pet_type = 'dog')describe_pet(pet_type = 'dog',pet_name = 'maomao')
上面的两种调用方式都可以正确的,可以打印出我们想要的语句,所以在关键字调用的时候我们无需考虑实参的顺序。
- 默认值
编写函数时,可给每个形参指定默认值。在调用函数中给形参提供了实参时,Python将使用指定的实参值;否则,将使用形参的默认值。因此,给形参指定默认值后,可在函数调用中省略相应的实参。使用默认值可简化函数调用,还可清楚地指出函数的典型用法。
def describe_pet(pet_type,pet_name = ''): print('I hava a ' + pet_type) ptint('It`s name is ' + pet_name)describe_pet('dog')
值得注意的一点是,当存在有默认值的形参时,就需要在定义函数的时候把有默认值的形参放在所有形参的后面。而且,当形参有默认值的时候,那么这个参数就会变成可选参数,调用函数的时候传或者不传这个参数对函数的调用都是没有影响的。
- 返回值
在定义函数的时候,我们也可以给函数设置返回值,返回值的类型可以是很多种:字符串,整数,列表,元组,字典等都是可以的,我们也可以使用之前学过的方式去处理这些返回值。
def return_models(model_1,model_2,model_3): models = [] models.append(model_1) models.append(model_2) models.append(model_3) return modelsmodels = return_models('plane','ship','tank')for modle in models: print(model)
阅读全文
0 0
- Python学习笔记(11)- 函数(1)
- Python学习笔记(1)递归函数
- Python学习笔记(函数)
- python学习笔记(函数)
- python学习笔记(函数)
- Python学习笔记(11)-Python自定义函数
- Python学习笔记(1) -- Python内建函数文档
- Python学习笔记(十一):Python函数
- Python学习笔记(三)--Python函数
- python 学习笔记 -- 函数
- Python学习笔记--函数
- Python学习笔记 函数
- Python学习笔记:函数
- python函数学习笔记
- Python学习笔记--函数
- Python学习笔记:函数
- 【Python学习笔记】- 函数
- Python学习笔记----函数
- Android四大组件之Activity全面学习
- 写给程序员的第二封信
- 指针+1
- Java代码性能优化技巧
- caffe代码阅读5:Layer的实现细节
- Python学习笔记(11)- 函数(1)
- 高性能Mysql:服务器性能剖析
- javascript 高级——几种对象创建方法
- java中char类型的默认值是 '\u0000' 吗?是空字符还是空格?
- 01 开始Python数据分析之旅
- unity日常——Mathf
- HTML5学习----拖拽效果
- MAC freeswitch 安装教程
- Gr