zoukankan      html  css  js  c++  java
  • python学习笔记(九)函数返回多个值,列表生成式,循环多个变量,入参格式声明

    一、函数返回多个值

    1、函数如果返回多个值的话,它会把这几个值放到一个元组里面
    2、函数如果返回多个值的话,也可以用多个变量来接收

    def say():
        num1 = 1
        num2 = 2
        num3 = 3
        return num1,num2,num3
    print(say()) #函数如果返回多个值的话,它会把这几个值放到一个元组里面,(1, 2, 3)
    res1,res2,res3 = say()#返回多个值时,可以用多个变量接收
    print(res1) #1
    print(res2) #2
    print(res3) #3

    二、列表生成式

    l = [i for i in range(1,101,2)]

    列表生成式,只能用在列表中

    先写循环,再把循环里的i拿出来,可以做一些简单的操作(补零、转换为字符串等)

    import random
    red_num = random.sample(range(1,34),6)
    new_num = []
    # for num in red_num:
    #     tmp = str(num).zfill(2)
    #     new_num.append(tmp)
    new_num = [str(num).zfill(2) for num in red_num]#列表生成式
    print(new_num)#['16', '20', '07', '18', '13', '01']

    生成100以内的奇数

    l = [i for i in range(1,101,2)]#外面是[]就是一个list
    print(l)

    三、生成器

    l1 = (i for i in range(1,11,2))

    将列表生成式中的[ ]换成( ),打印生成器本身会显示generator而不是列表

    l = [i for i in range(1,11,2)]#外面是[]就是一个list
    #以空间换时间,内存占用大,但是不用再计算省cpu
    #list它是把所有的元素都放在内存里面的,这里就会申请5块内存空间
    print(l)#[1, 3, 5, 7, 9]
    l1 = (i for i in range(1,11,2))#外面是()的话,就是生成器
    #generator生成器比list要节省内存,它是每次循环的时候,会根据规则计算一个元素,放到内存里面
    #generator性能比list好一些,只申请一块内存空间,每次调用再去根据规则算
    print(l1) #<generator object <genexpr> at 0x00000000030FE4C0>
    for i in l1:
        print(i) #1 3 5 7 9

    四、三元表达式

    c = a if a > b else b

    a = 5
    b = 3
    # if a > b:
    #     c = a
    # else:
    #     c = b
    c = a if a > b else b #如果a大于b的话,a = c,否则 c =b
    print(c)

    五、循环二维数组

    l = [
        [1,2,3,4],
        ['a','b','c','d']
    ]
    for a,b,c,d in l:#二维数组里有多个元素,可以这么循环
        print(a) #1,a
        print(b) #2,b

    六、声明入参格式

    仅仅是为了代码易读,并不会强制转换类型

    def my(name:str):#告诉别人name是str,但不会强制转化,l:list告诉别人传入是list
       print(name)
    my('hello')
    my(['123',123])#入参是list也可以,['123', 123]
  • 相关阅读:
    权限设计=功能权限+数据权限
    C# 自定义配置文件
    asp.net core 系列 2 启动类 Startup.CS
    asp.net core 系列 1 概述
    IOC : Unity 配置和使用
    Unity Ioc 依赖倒置及Untity AOP被动拦截/自动拦截
    webuploader-异步切片上传(暂不支持断点续传)及 下载方法!C#/.NET
    C# 构造基础返回值类型-BaseResponse
    神奇的选择器 :focus-within
    妙用 scale 与 transfrom-origin,精准控制动画方向
  • 原文地址:https://www.cnblogs.com/mululu/p/9002517.html
Copyright © 2011-2022 走看看