• Python函数


    为什么要有函数

    函数即变量                    

    函数,一次定义,多次调用

    可以提高代码的重复利用率和提高他的模块性

    定义函数的格式:

    def func():  
    
        print('this is test func') 

    函数分为两个阶段

    第一个阶段:定义阶段

    第二个阶段:调用阶段

    如何调用定义的函数:

    函数的内存地址加上()就是调用

    print(func)  #查看函数内存地址

    调用函数的格式

    func()   #函数调用才会执行函数体代码,函数体就是你写进函数里的代码

    快速定义名字

    def func(name,age):  #name,age代表形参,它俩是虚的,只有在调用阶段它俩才有值  
    
        print('my name is %s' % (name,age))  
    
    func('兰慧玲',19)  #兰慧玲,19代表实参

    不可以用关键字(key:value形式)传参

    def func(*args):  #当有多个参数时,可以考虑用*args,不可以用关键字传参
    
        print(args[1]) #调用参数 
    
    func(1,2,3,4,5,6) 

    关键字传参

    def func(**kwargs):  
    
        print(kwargs)  
    
    func() 

    既可以传关键字参数,也可以传没有关键字参数

    def func(*args,**kwargs):  
    
        print(args)  
    
        print(kwargs)  
    
    func() 

    只要定义了形参,必须在调用的时候传参,函数体应不应用你这个形参无所谓。

    def func(a,b):  
    
        print('this is test func')  
    
    func(1,2)

    优化名片管理系统

    #encoding=gbk
    lt = []
    def wel():
        print('欢迎使用名片系统')
        print('以下是使用说明')
        print('1.增加 2.删除 3.查询 4.修改 5.退出')
        print('=='*50)
    
    def add():
        username = input('请输入要增加的姓名: ')
        age = input('请输入要增加的年龄: ')
        phone = input('请输入要增加的电话: ')
        dict = {'name':username,
                'age':age,
                'phone':phone
                }
        lt.append(dict)
    
    def delt():
        for i in lt:
            print(lt.index(i),i)
            a = input('请选择要删除的序号')
            if a:
                lt.pop(int(a))
                print(lt)
            else:
                print('请正确操作')
    
    def find():
        for i in lt:
            b = input('请输入你要查找的名字')
            if b == i['name']:
                print(i)
            else:
                print('查无此人')
    
    def change():
        for i in lt:
            print(lt.index(i),i)
            c = input('请选择要修改的序号')
            new_name = input('新名')
            if new_name:
                lt[int(c)]['name'] = new_name
            new_age = input('新年龄')
            if new_age:
                lt[int(c)]['age'] = new_age
            new_phone = input('新电话')
            if new_phone:
                lt[int(c)]['phone'] = new_phone
    
    def main():
        while True:
            wel()
            num = input('请输入选择的数字')
            if num == '1':
                add()
            elif num == '2':
                delt()
            elif num == '3':
                find()
            elif num == '4':
                change()
            elif num == '5':
                print('谢谢使用')
                break
            else:
                print('请输入正确选项')
    
    if __name__ == '__main__':
        main()
    View Code

    return是函数执行结果的返回值

    return往下的代码将不会执行,只能用在函数体内

    def func():  
    
        print('this is test func')  
    
        return 0  
    
        print('aaa')  
    
    func() 

    返回值可以定义任何,当返回值不设定的时候,是None,为空。

    def func(a):  
    
        print('this is test func')  
    
        if a == 0:  
    
            print('aaa')  
    
            return 0  
    
        elif a == 2:  
    
            return 2  
    
        else:  
    
            print('bbb')  
    
    return 1  
    
    func(1)  

    返回值                                                

    就是函数调用本身的结果:print(func())

    def func():  
    
        print('this is test func')  
    
        return 0  
        
    func() 

    return的作用

    def func(a):  
    
        print('this is test func')  
    
        if a == 1:  
    
            return 1  
    
        elif a == 2:  
    
            return 2  
    
        elidf a == 3:  
    
            return 3  
    
        else:  
    
     print('错误')  
    
     func(3)  
    def func1(a):  
    
        print('this is test func')  
    
        if a == 1:  
    
            return 1  
    
        elif a == 2:  
    
            return 2  
    
        elif a == 3:  
    
            return 3  
    
        else:  
    
            print('错误')  
    
    def func2(i):  
    
        if i == 3:  
    
           print('true')  
    
        else:  
    
           print('flase') 
    
    res = func1(3)  
    
    func2(res)  

    这个是返回它的内存地址

    def func():  
    
        return func  
    
    pritn(func()) 
  • 相关阅读:
    EXCel操作类
    C#中的excel操作类//集合了几个别人的类
    企业库 AccessHelper
    企业库 SqlHelper
    ASP.NET Excel操作类
    WPF使用MVVM(一)属性绑定
    WPF使用ttf图标字体
    WPF自定义界面WindowChrome
    WPF使用IconFont中的Symbol图标
    字体图标查看工具(Character Map UWP)
  • 原文地址:https://www.cnblogs.com/shuaiyin/p/10922874.html
Copyright © 2020-2023  润新知