zoukankan      html  css  js  c++  java
  • 函数

    1、函数的初识

    1)my_len()  # 函数名+() 执行函数
    def 关键字 函数名(设定与变量相同):
    函数体
    #函数的返回值 return
        1,遇到return,结束函数。
        def func1():
            print(11)
            print(22)
            return
            print(333)
            print(444)
        func1()
        2,给函数的调用者(执行者)返回值。
            无 return 返回None
            return 不写 或者 None 返回None
            return 返回单个数.
            return 返回多个数,将多个数放在元组中返回。
    s1 = 'fdsgdfkjlgdfgrewioj'
    # def my_len():
    #     count = 0
    #     for i in s1:
    #         count += 1
    #     return 666
    # print(my_len(),type(my_len()))
    
    # def my_len():
    #     count = 0
    #     for i in s1:
    #         count += 1
    #     return 666,222,count,'老男孩'
    # print(my_len(),type(my_len()))
    
    # def my_len():
    #     count = 0
    #     for i in s1:
    #         count += 1
    #     return 666,222,count
    # ret1,ret2,ret3 = my_len()  # (666, 222, 19,)
    # print(ret1)
    # print(ret2)
    # print(ret3)
    
    # def my_len():
    #     count = 0
    #     for i in s1:
    #         count += 1
    #     return count
    # print(my_len())
    # print(len(s1))
    View Code

    2)函数的传参

    li = [1, 2, 3, 43, 'fdsa', 'alex']
    s1 = 'fdsgdfkjlgdfgrewioj'
    
    # def my_len(a):  # 函数的定义()放的是形式参数,形参
    #     count = 0
    #     for i in a:
    #         count += 1
    #     return count
    # ret = my_len(li)  # 函数的执行() 实际参数,实参
    # print(ret)
    # print(len(s1))
    
    # 从实参角度
        #1,位置参数。 必须一一对应,按顺序
    # def func1(x,y):
    #     print(x,y)
    # func1(1, 2)
        #2,关键字参数。必须一一对应,不分顺序。
    # def func1(x,y,z):
    #     print(x,y,z)
    # func1(y=2,x=1,z=5,)
    
    # def max(a,b):
    #     if a > b:
    #         return a
    #     else:
    #         return b
    # print(max(100,102))
    # def max(a,b):return a if a > b else b
    # print(max(100,102))
        #3,混合参数。一一对应 且 关键字参数必须在位置参数后面。
    # def func2(argv1,argv2,argv3):
    #     print(argv1)
    #     print(argv2)
    #     print(argv3)
    # func2(1,2,argv3=4)
    # 从形参角度
        #1,位置参数。 必须一一对应,按顺序
    # def func1(x,y):
    #     print(x,y)
    # func1(1,2)
        #2,默认参数。 必须在位置参数后面。
    # def register(name,sex='男'):
    #     with open('register',encoding='utf-8',mode='a') as f1:
    #         f1.write('{} {}
    '.format(name,sex))
    #
    # while True:
    #     username = input('请输入姓名:/q 或者 Q 退出')
    #     if username.upper() == 'Q':break
    #     if 'a' in username:
    #         sex = input('请输入性别:')
    #         register(username,sex)
    #     else:
    #         register(username)
    
        #3,动态参数 *args,**kwargs 万能参数
    
    # def func2(*args,**kwargs):
    #     print(args)  # 元组(所有位置参数)
    #     print(kwargs)
    # func2(1,2,3,4,5,6,7,11,'alex','老男孩',a='ww',b='qq',c='222')
    # 位置参数,*args,默认参数
    # def func3(a,b,*args,sex='男'):
    #     print(a)
    #     print(b)
    #     print(sex)
    #     print(args)
    # func3(1,2,'老男孩','alex','wusir',sex='女')
    # 位置参数,*args,默认参数,**kwargs
    # def func3(a,b,*args,sex='男',**kwargs):
    #     print(a)
    #     print(b)
    #     print(sex)
    #     print(args)
    #     print(kwargs)
    # func3(1,2,'老男孩','alex','wusir',name='alex',age=46)
    def func1(*args,**kwargs):  # 函数的定义 * 聚合。
        print(args)
        print(kwargs)
    # l1 = [1,2,3,4]
    # l11 = (1,2,3,4)
    # l2 = ['alex','wusir',4]
    # func1(*l1,*l2,*l11)  # 函数的执行:* 打散功能。
    # func1(1,2,3,4,'alex','wusir',4,1,2,3,4)  # 函数的执行:* 打散功能。
    # dic1 = {'name1':'alex'}
    # dic2 = {'name2':'laonanhai'}
    # func1(**dic1,**dic2)
    View Code
  • 相关阅读:
    BugkuCtf-pwn2-exp
    Python 基础知识(一)
    C++基本语法的部分总结
    Ububtu 14.04 安装 Hadoop 2.7.3
    leetcode-Evaluate the value of an arithmetic expression in Reverse Polish Notation
    leetcode-Given a binary tree, find its minimum depth
    Java 实现 AES 加解密
    git fork代码并修改胡提交到自己的git仓库
    git使用记录_备忘
    java awt 中文乱码 显示为 方块
  • 原文地址:https://www.cnblogs.com/bjj-0102/p/8896488.html
Copyright © 2011-2022 走看看