函数:函数是一个独立且封闭完成特定功能的代码块,可以在任何地方被调用。
Python中的函数
1、内建函数:python中已经建好的,可直接使用。
2、用户自定义函数:自己根据需求实现的功能设计代码块
函数的作用
1、 解决代码重复的问题
2、 代码结构和思维结构一致
3、 利于分工合作:公司架构师拆解问题,分成不同的小问题,定义好每个问题的函数的功能及函数的接口
4、 代码清晰、易读、易修改
Python中函数的定义语法:
def function_name(parameter1,parameter2,xxxxx):
语句1
语句2
return xxx
return:函数返回值,可有可无,还可以用来表示函数的结束。
函数的调用:
function_name()
传递实参
1.参数
1.1、形式参数,简称形参,比如member_name
1.2、实际参数,简称实参,比如*清
2、实参表传递给形参表的方法:
2.1、位置参数:实参和形参的顺序必须相同
2.2、关键字参数:调用形式:形参名=’值,无需考虑实参的顺序
2.3、默认值:形参的值固定不变
2.4、任意数量的参数:python可以通过*,让程序创建一个空元组,接受任意数量的参数值。
传递数据结构
1、 传递列表:列表可以作为函数的参数。
2、 传递字典:python中使用 ***作为形参接受实参传递的键值对。
3、 注意区别:在形参列表中,表示传递空元组,**表示传递字典
函数的理解-全局变量&局部变量
函数可以看做一个盒子
1、盒子内:即函数的内容,也被称为私有的,内部的资源只能被自己使用。盒子内的变量称局部变量。
2、盒子外:函数不能使用,只能通过参数传递。变量称全局变量
3、盒子内外的变量名可以相容或者不同,不冲突。
4、函数的return可以看做内部和外部的沟通桥梁
函数的导入
如何把模块中的函数导入到主体文件中,4种方式:
#方法1 导入整个模块文件的函数 必须用module_name.function_name()调用
import sys
sys.path.append(':/Users/Wangqing/Desktop')
import employee_model
my_employee=employee_model.employee('Yoni','ma',location='北京',dep='大数据',xueli='本科')
print('print my employee information:\n')
for key,value in my_employee.items():
print(key+':'+value+'\n')
#方法2
模块导入特定的函数,调动是,可以不用模块名字
import sys
sys.path.append(':/Users/Wangqing/Desktop')
from employee_model import employee
my_employee = employee('Yoni', 'ma', location='北京', dep='大数据', xueli='本科')
print('print my employee information:\n')
for key,value in my_employee.items():
print(key+':'+value+'\n')
#方法3 使用as 制定函数的别名
import sys
sys.path.append(':/Users/Wangqing/Desktop')
from employee_model import employee as em
my_employee = em('Yoni', 'ma', location='北京', dep='大数据', xueli='本科')
print('print my employee information:\n')
for key,value in my_employee.items():
print(key+':'+value+'\n')
#方法4 使用*导入模块中的所有函数 但是加载会很慢
import sys
sys.path.append(':/Users/Wangqing/Desktop')
from employee_model import *
my_employee = employee('Yoni', 'ma', location='北京', dep='大数据', xueli='本科')
print('print my employee information:\n')
for key,value in my_employee.items():
print(key+':'+value+'\n')