您的位置:首页 > 编程语言 > Python开发

python-函数

2018-01-31 00:22 447 查看
# coding=gbk 

#***初学python----函数***

#Python的乐高积木

#一个程序可以按照不同功能的实现,分割成许多代码块,每一个代码块都可以封装成函数

# def关键字创建函数

def MyFirstFunction():

    print("这是我用python写的第一个函数")

    print("我很开心哦")

print(MyFirstFunction())

for i in range(3):

    MyFirstFunction()

    def mySecondfunction(name):

       print(name+"是帅锅")

    print(mySecondfunction('python菜鸟'))
def add(num1,num2):#添加参数后的函数,用逗号,把变量分隔开

    print(num1+num2)

add(1,2)

#函数的返回值,使用关键字return,没有返回值时函数默认返回None 

#函数的参数氛围形式参数和实际参数,与C语言中的概念是一样的

#函数文档,让他人理解你的函数,适用于大型项目的团队开发,用于描述对应函数的功能

def exchangeRate(dollar):

    """美元 -> 人民币

            汇率暂定为 6.5

    """         #函数文档,"""---"""在3个双引号之间的函数说明

    return dollar* 6.5

print(exchangeRate(10))

print(exchangeRate.__doc__)#通过函数名.__doc__的方式,获得函数的描述定义

#普通参数叫位置参数,为避免粗心,有了关键字参数,指的是传入实参是指定形参的变量名

#默认参数是指函数在定义时就已经赋予了默认值给参数

#收集参数

golbal关键字对全局变量的修改
python允许函数内嵌,内嵌函数的作用域在外部函数的区域内,

函数闭包(closuer),是函数式编程的一个重要语法结构,函数式编程是一种编程范式,Python 的闭包从表现形式上定义:如果在一个内部函数里,对外部作用域(但不是全局作用域)的变量进行引用,那么内部函数就被称为闭包。

lambda表达式,创建匿名表达式,省去定义表达式的过程

k = lambda x,y : x + y

print(k(4,6))
#两个BIF, filter()和map()

#利用filter实现过滤功能,filter(筛选条件(可以是函数),迭代参数)
print(list(filter(lambda x: x%2!=1,range(100))))

print(list(filter(lambda x: x%2==1,range(100))))
#map()--映射,与filter()一样,有两个参数,任然是一个函数和一个可迭代序列,

#讲每一个迭代序列作为参数代入函数中做运算加工,然后返回一个加工后的序列
print(list(map(lambda x : x*2,range(10))))
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: