• python之函数的基本用法


    函数的定义和调用

    函数的定义:def作为函数定义的关键字,为了告诉python这是一个函数。

    无参函数:

    def s():
        print("你好呀,祝你天天开心!")
    s()
    
    • 1
    • 2
    • 3
    你好呀,祝你天天开心!
    
    • 1

    有参函数:函数调用时,将实参传递给形参

    举例:

    def person(name,age,add)://函数的定义
        print("名字是%s,%s的年龄是%d,%s的家庭住址是%s"%(name,name,age,name,add))
    person(input("请输入你的名字"),int(input("请输入你的年龄")),input("请输入你的家庭住址"))
    //函数的调用,形参实参的个数和类型必须保持一致
    
    • 1
    • 2
    • 3
    • 4
    请输入你的名字易烊千玺
    请输入你的年龄22
    请输入你的家庭住址湖南怀化
    名字是易烊千玺,易烊千玺的年龄是22,易烊千玺的家庭住址是湖南怀化
    
    • 1
    • 2
    • 3
    • 4

    1:通过位置传递参数:仅通过位置关系将实参对应的形参联系起来,位置实参的顺序很重要

    def person(name,age):
        print("%s的年龄是%s"%(name,age))
    person(12,"Jason")//12对应name,age对应jason
    person("Jason",12)
    
    • 1
    • 2
    • 3
    • 4
    12的年龄是Jason
    Jason的年龄是12
    
    • 1
    • 2

    2:通过关键字传递参数:通过关键字将实参对应的形参联系起来,顺序不重要,因为python知道那个实参该赋给那个形参
    举例:

    def person(name,age):
        print("%s的年龄是%s"%(name,age))
    person(age=12,name="Jason")
    person(name="Jason",age=12)
    
    • 1
    • 2
    • 3
    • 4
    Jason的年龄是12
    Jason的年龄是12
    
    • 1
    • 2

    带有返回值的函数:将函数的值返回给调用函数

    举例:

    def add(number1,number2):
        return number1+number2
    print(add(12,23))
    a=add(19,2)
    print(a)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    35
    21
    
    • 1
    • 2

    将函数返回值作为实参进行调用:

    def add(number1):
        return number1+10
    print(add(12))
    a=add(19)
    print(add(a))
    
    • 1
    • 2
    • 3
    • 4
    • 5
    22
    39
    
    • 1
    • 2

    默认值:给形参设定默认值,对应的实参可以不传递值,如果实参也有值,则对应的默认值会被覆盖。

    def add(number1,number2=9):
        return number1+number2
    print(add(12))
    a=add(19)
    print(a)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    21
    28
    
    • 1
    • 2

    函数与循环结合:

    与while循环结合:

    def getSum(x):
    //函数体
        sum = 0
        i = 1
        while i < x:
            sum += i
            i += 1
        return sum//将sun返回给调用函数
    print(getSum(10))
    print(getSum(100))
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    45
    4950
    
    • 1
    • 2

    与for循环结合:

    def getSum(x):
        i=1
        add=1
        for i in range(1,x):
           add*=i
        return add
    print(getSum(10))
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    362880
    
    • 1

    函数的分类:内置函数和自定义函数

    内置函数:python中已经规定好用来实现某些特定功能的函数
    举例:

    print(bool(2))//bool()函数用来查看数据的布尔值,非0返回True,0或返回False
    print(abs(-10))//abs()函数用来取数据的绝对值
    print(type(12))//type()函数用来查看变量的类型
    
    • 1
    • 2
    • 3
    True
    10
    <class 'int'>
    
    • 1
    • 2
    • 3

    自定义函数:通过编写函数体去实现自主想实现的功能。
    举例:

    def add(number1,number2,nmuber3):
        print(number1+number2+nmuber3)//打印三数之和
        print(number1 * number2 * nmuber3)//打印三数之积
        print(number1-number2-nmuber3)//打印数之差
    add(10,2,7)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    19
    140
    1
    
    • 1
    • 2
    • 3

    函数的嵌套调用:

    自定义函数与三目运算符结合:

    def add(x,y):
        return x+y if x>y else x-y //三目运算符:如果x>y,则返回值为x+y,否则为x-y
    print(add(1,3))
    print(add(19,2))
    
    • 1
    • 2
    • 3
    • 4
    -2
    21
    
    • 1
    • 2

    自定义函数的嵌套使用:

    def add(a,b,c,d):
        max1=max(a,b)
        max2=max(max1,c)
        max3=max(max2,d)
        return max3
    max_s=add(23,4,15,6)
    print(max_s)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    23
    
    • 1

    函数的嵌套定义:注意函数的定义语句和调用语句缩进必须保持一致。

    def f1():
        print('你好!')
        def f2():
            print('希望你每天开心')
            def f3():
                print('好好学习,天天向上!')
            f3()
        f2()
    f1()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    你好!
    希望你每天开心
    好好学习,天天向上!
    
    • 1
    • 2
    • 3
  • 相关阅读:
    如何采用Python读取一个图像
    【论文解析】笔触渲染生成 前沿工作梳理
    UIKit Inside: frame bounds position anchorPoint center
    AI开始卷高考了,英语已被卷到134分??
    全景解析 Partisia Blockchain:以用户为中心的全新数字经济网络
    求算法工程师做访谈 绝对真实
    拉代码后npm i 提示代码更改9999+是因为创建代码仓库把node_modules文件提交到了git仓库
    深入了解移动端适配的方案
    brew 下载 nvm 之后,nvm command not found
    2022杭电多校七 1007-Weighted Beautiful Tree(树形DP)
  • 原文地址:https://blog.csdn.net/m0_64365419/article/details/125538077