• 函数的初识 函数的返回值 参数


    函数的初识
    l1 = [1, 2, 3, 1, 6, 9, 10]
    # count = 0
    # for i in l1:
    #     count += 1
    # print(count)
    # 重复代码较多。
    # 可读性差。
    # print(len(l1))
    
    
    

    def关键字 空格 函数名(与变量设置相同): 英文的冒号
    函数体
    执行函数 :函数名+()
    函数是以功能为导向的,
    def login():
    pass
    def register():
    pass
    # def my_len():
    #     l1 = [1, 2, 3, 1, 6, 9, 10]
    #     count = 0
    #     for i in l1:
    #         count += 1
    #
    # my_len()




    函数的返回值。

    return: 1,函数中遇到return 结束函数,下面代码不执行。
    2,将函数里面的值返回给函数的执行者(调用者)。
    第一种情况:
    只有return,返回None
    # def login():
    #     a = 2
    #     b = 3
    #     print(111)
    #     print(a,b)
    #     return
    #
    #
    # print(login())
    
    
    

    第二种情况:
    return None

    第三种情况:
    return 单个值(返回的值与单个值的类型相同)
    def login():
        a = 2
        b = 3
        # return a
        return [1, 2]
    print(login(),type(login()))
    ret = login()
    
    
    

    第四种情况:
    return 多个值 以元组的形式返回给函数的调用者。
    # def login():
    #     a = 2
    #     b = 3
    #     return 1, 'alex', [1, 2], {'name': '老男孩'}
    #
    # ret = login()
    # print(ret)
    
    
    
    '''
    什么是None?
    所有的空集合,空列表,空字典.... --->None

    '''
    # def my_len():
    #     l1 = [1, 2, 3, 1, 6, 9, 100]
    #     count = 0
    #     for i in l1:
    #         count += 1
    #     return count
    # print(my_len())
    
    
    
     

    函数的参数。
    # def my_len(a):  #  形式参数,形参
    #     count = 0
    #     for i in a:
    #         count += 1
    #     return count
    # l1 = [1, 2, 3, 1, 6, 9, 100]
    # print(my_len(l1))  # 实际参数,实参
    
    
    


    # 实参角度

    # 三元运算
    # x = 100
    # y = 99
    # if x > y:
    #     print(x)
    # else:
    #     print(y) 
    
    
    # 三元  c, x, y
    
    
    # c = x if x > y else y
    # print(c)
    
    
    


    位置参数
    一一对应,实参形参数量相等
    # def tes(a, b, c):
    #     print(111)
    #     print(a, b, c)
    #
    # tes(22, 'alex', [11, 22, 33])
    
    
    


    关键字参数
    一一对应,实参形参数量相等,实参顺序可变
    # def func(x, y,):
    #     print(x, y)
    #
    # func(y=3333, x=4)

    混合参数 (位置参数,关键字参数)
    关键字参数必须在位置参数后面
    # def func1(x, y, z):
    #     print(x, y, z)
    
    # func1(111, 222, z=555)  # 混合传参 位置参数必须再前面
    # func1(111, y=555, 222)  # 混合传参 位置参数必须再前面
    
    
    


    # 形参角度

    位置参数
    一一对应,实参形参数量相等
    同 实参的位置参数


    默认参数
    默认参数必须放在形参的位置参数后面
    默认参数不传值则为默认值,传值则覆盖默认值。

    def input_information(name, sex=''):
        with open('information',encoding='utf-8', mode='a') as f1:
            f1.write('{}	{}
    '.format(name, sex))

    while True:
    msg = input('请输入用户的姓名,性别Q或者q退出').strip()
    if msg.upper() == 'Q':break
    if ',' in msg:
    name1, sex1 = msg.split(',')
    input_information(name1, sex1)
    else:
    input_information(msg)
    
    
    

    动态参数
  • 相关阅读:
    为什么处理有序数组比无序数组快?
    LeetCode:Longest Common Prefix
    LeetCode:Container With Most Water,Trapping Rain Water
    LeetCode:Substring with Concatenation of All Words (summarize)
    LeetCode:Pow(x, n)
    LeetCode:Combination Sum I II
    LeetCode:N-Queens I II(n皇后问题)
    LeetCode:Valid Sudoku,Sudoku Solver(数独游戏)
    LeetCode:Divide Two Integers
    LeetCode:Reverse Nodes in k-Group
  • 原文地址:https://www.cnblogs.com/HoneyTYX/p/9015954.html
Copyright © 2020-2023  润新知