博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python函数定义与使用
阅读量:7223 次
发布时间:2019-06-29

本文共 2060 字,大约阅读时间需要 6 分钟。

Python函数定义与调用

上一篇文章:
下一篇文章:

1、函数定义与调用

语法:

def 函数名():      函数代码

实例:

def printHello():    print("Hello world")#调用函数printHello()

结果:

Hello world

2、函数的帮助文档

help(函数名称):返回对应函数的帮助文档。

在函数定义中的首行,用“”添加的就是帮助文档。

实例:

def printHello():    "帮助文档:打印hello world"    print("Hello world")help(printHello)

结果:

Help on function printHello in module __main__:printHello()帮助文档:打印hello world

3、参数与返回值

python采用应用传参,当参数类型为不可变类型时,对参数没有影响,当参数类型为可变时,可能会修改参数

实例:

#定义b的默认值为3def add(a,b=3):    return a+b#调用函数print(add(1,2))print(add(1))

结果:

34

4、函数嵌套调用

实例:

def A():    print("A函数调用")    def B():        print("B函数调用了")    print("A函数调用B函数前")    B()    print("函数A调用函数B后")#调用函数A()

结果:

A函数调用A函数调用B函数前B函数调用了函数A调用函数B后

5、不定长参数

加了*的参数变量,还用元组来存储多个参数。

加了**的参数,会用字典来存储多个参数

实例:

#定义b的默认值为3#c为元组#d为字典def add(a,b=3,*c,**d):    print("a=",a)    print("b=",b)    print("c=",c)    print("d=",d)#调用函数add(1,2)print("*"*30)add(1)print("*"*30)add(1,2,3,4,5)print("*"*30)add(1,2,3,4,5,name="mark",age=18)

结果:

a= 1b= 2c= ()d= {}******************************a= 1b= 3c= ()d= {}******************************a= 1b= 2c= (3, 4, 5)d= {}******************************a= 1b= 2c= (3, 4, 5)d= {'name': 'mark', 'age': 18}

6、匿名函数

用lambda关键词可以创建小型函数,省略了用def关键字来声明函数的标准步骤。
  • 匿名函数声明与调用

实例:

add=lambda a,b:a+bprint(add(2,3))

结果:

5
  • 匿名函数作为参数传递

实例:

def fun(a,b,lam):    print("a=",a)    print("b=",b)    print("a+b=",lam(a,b))add=lambda a,b:a+bfun(4,5,add)

结果:

a= 4b= 5a+b= 9
  • 匿名函数用来协助排序

实例:

#简单列表排序很简单ages=[18,19,17]print(ages)ages.sort()print(ages)#当列表内包含的是字典,怎么根据字典内的age排序呢?infors=[    {"name":"mark","age":18},    {"name":"sq","age":19},    {"name":"xman","age":17}]print(infors)'''下面匿名函数等效于:     def  fun(x):         return x["age"]'''infors.sort(key=lambda x:x["age"])print(infors)

结果:

[18, 19, 17][17, 18, 19][{'name': 'mark', 'age': 18}, {'name': 'sq', 'age': 19}, {'name': 'xman', 'age': 17}][{'name': 'xman', 'age': 17}, {'name': 'mark', 'age': 18}, {'name': 'sq', 'age': 19}]

7、函数重用

导入整个模块:import 模块名

导入特定的函数:from 模块名 import 特定函数

使用as给函数重命名:from 模块名 import 特定函数 as 新名称

使用ad给模块冲命名 import 模块名 as 新名词

导入模块的所有函数:from 模块名 import *

转载地址:http://fikfm.baihongyu.com/

你可能感兴趣的文章
详细解说 STL 排序(Sort)(转)
查看>>
Maven单独构建多模块项目中的单个模块
查看>>
Xamarin Essentials教程剪贴板Clipboard
查看>>
malloc()函数(Linux程序员手册)及函数的正确使用【转】
查看>>
MFC限制edit控件的字符输入长度
查看>>
url rewrite优化url的可读性
查看>>
winform 窗体实现增删改查(CRUD)共用模式
查看>>
Yii查看执行的SQL
查看>>
poj_2709 贪心算法
查看>>
【程序员眼中的统计学(11)】卡方分布的应用
查看>>
【转】static_cast和reinterpret_cast
查看>>
Linux常用网络命令
查看>>
文件夹工具类 - FolderUtils
查看>>
Java中的集合框架
查看>>
后台dubug有值且sql也打印出来执行了但是前台就是查不到数据
查看>>
最近5年183个Java面试问题列表及答案[最全]
查看>>
机器学习(Machine Learning)&深度学习(Deep Learning)资料
查看>>
Python输入函数 raw_input( ) 与 input()
查看>>
Xwiki平台Windows搭建(Tomcat7 + XWiki6.2 + MySQL5.5)
查看>>
SSL/TLS握手过程
查看>>