前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python学习——函数

Python学习——函数

作者头像
py3study
发布2020-01-17 12:24:19
3050
发布2020-01-17 12:24:19
举报
文章被收录于专栏:python3python3

Python学习——函数

1.函数定义:

代码语言:javascript
复制
def Firstfunction():
    'Mashiro'
    print("I love Mashiro!")

print(Firstfunction.__doc__)#函数文档
Firstfunction()#函数调用
代码语言:javascript
复制
输出:
Mashiro
I love Mashiro!

2.关键字参数:在函数调用时无需考虑参数的顺序

代码语言:javascript
复制
def Secondfunction(name1, name2):
    print(name1 + " love " + name2 + "!")、

Secondfunction(name2='Mashiro', name1='I')
代码语言:javascript
复制
输出:
I love Mashiro!

3.默认参数:在函数定义时为参数指定默认参数值

代码语言:javascript
复制
def Thirdfunction(name1='I', name2='Mashiro'):
    print(name1 + " love " + name2 + "!")

Thirdfunction()
Thirdfunction("Sakura")
代码语言:javascript
复制
输出:
I love Mashiro!
Sakura love Mashiro!

4.可变参数:函数可以有任意数量的变量,可以通过星号来实现(print参数也为可变参数)

代码语言:javascript
复制
def test(*variable, name):
    print("参数长度是:", len(variable), name)
    print("第二个参数是", variable[1])


test(1, 'Mashiro', 2, 3, 4, 5, name='Shiina')
代码语言:javascript
复制
输出:
参数长度是: 6 Shiina
第二个参数是 Mashiro

5.Return:从函数中返回

代码语言:javascript
复制
def Calmaximum(x,y):
    if x>=y:
        return x
    else:
        return y

print(Calmaximum(3,4))
代码语言:javascript
复制
输出:4

6.global:通过global语句,可以为定义在函数之外的变量赋值

代码语言:javascript
复制
temp=50
def testglobal():
    global temp
    temp=100

testglobal()
print(temp)
代码语言:javascript
复制
输出:100

7.闭包

7.1 在外函数中定义了一个内函数,内函数里使用了外函数的临时变量,且外函数的返回值是内函数的引用,便构成了闭包。

代码语言:javascript
复制
def testclosure(x):
    def innerfun(y):
        print(x * y)

    return innerfun


tmp = testclosure(4)
print(type(tmp))
tmp(5)
tmp1 = testclosure(4)(5)
代码语言:javascript
复制
输出:
20
20

7.2 内函数修改外函数值的两种方法

代码语言:javascript
复制
def fun(a):
    x = 1
    y = [a]

    def fun1():
        nonlocal x#用nonlocal关键字声明,向上面的空间中寻找变量
        x = x + 1
        y[0] = y[0] + 1#把变量修改为可改变的数据类型
        print(x)
        print(y[0])
    return fun1()

fun(5)
代码语言:javascript
复制
输出:
2
6

8.lambda表达式

lambda 函数参数:函数返回值

优点:1.使代码更加简洁。2.不需要考虑命名问题。

代码语言:javascript
复制
f = lambda x: 2 * x + 1
print(f(5))
代码语言:javascript
复制
输出:11
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-05-09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Python学习——函数
    • 1.函数定义:
      • 2.关键字参数:在函数调用时无需考虑参数的顺序
        • 3.默认参数:在函数定义时为参数指定默认参数值
          • 4.可变参数:函数可以有任意数量的变量,可以通过星号来实现(print参数也为可变参数)
            • 5.Return:从函数中返回
              • 6.global:通过global语句,可以为定义在函数之外的变量赋值
                • 7.闭包
                  • 7.1 在外函数中定义了一个内函数,内函数里使用了外函数的临时变量,且外函数的返回值是内函数的引用,便构成了闭包。
                    • 7.2 内函数修改外函数值的两种方法
                      • 8.lambda表达式
                      领券
                      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档