码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Python学习笔记 —— 独步天下推导式语法糖


    Python学习笔记 —— 独步天下推导式语法糖

    • 前言
    • 介绍
    • 列表推导式
      • 获取当月天数
    • 字典推导式
      • 模拟三条用户数据
    • 结束语

    前言

    最近心血来潮,学习了一下Python,其中关于 推导式语法糖 感觉功能确实强悍,一行解决过滤问题,特此记录

    介绍

    在业务场景中肯定避免不了对于列表或者字典的过滤操作,那么按照传统过滤手段流程。
    在python中倒是显得简单化了

    本文只介绍

    • 列表推导式
    • 字典推导式

    列表推导式

    语法: [表达式 for 表达式 in 迭代器 if 条件]

    是不是第一眼看起来感觉太抽象了,我们直接看看代码示例

    获取当月天数

    代码示例

    # 推导式
    # 列表推导式
    #这个月天数列表 假设是大月
    dayList = [day for day in range(31) if day >=1]
    #同等与
    newList = []
    for i in range(31):
        if i == 0:
            continue
            pass
        newList.append(i)
    print("天数列表推导式前后数据\n{before},\n{after} ".format(before=newList,after=dayList))
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    结果

    天数列表推导式前后数据
    [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30],
    [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30] 
    
    • 1
    • 2
    • 3

    由此可见该语法糖的实用性多强。

    字典推导式

    语法: [key:value for key in 迭代器 for value in 迭代器 if 条件]

    看起来比列表推导式多了个value的遍历,实际上更简单

    模拟三条用户数据

    #字典推导式
    #多个用户数据 随机密码
    import uuid
    nameList = ["小明","张三","李四"]
    passWordList = []
    index = 1
    while index <= len(nameList):
        passWordList.append(str(uuid.uuid4()))
        index+=1
    
    userInfo = {key:value for key in nameList for value in passWordList}
    print(userInfo)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    使用了uuid库用来做随机生成的密码,代码一目了然!

    结果

    {'小明': '0df514d4-cc1e-40b3-ad7d-4d364448b5bb', '张三': '0df514d4-cc1e-40b3-ad7d-4d364448b5bb', '李四': '0df514d4-cc1e-40b3-ad7d-4d364448b5bb'}
    
    • 1

    结束语

    关于 Python学习笔记 —— 独步天下推导式语法糖 就讲到这里,对你有帮助的话!

    • 点赞
    • 收藏

    谢谢你的观看!

  • 相关阅读:
    【产品经理修炼之道】- 政务G端产品建设指南
    jxTMS设计思想之能力扩展
    Scala 变量
    从入门到精通|Yalmip+Cplex在电力系统中的应用(超棒,看不懂算我输,没有收获也算我输)
    LeetCode50天刷题计划(Day 21—— 外观数列、组合总和(11.50-12.30;12.30-14.20)
    如何在 Windows 10 上安装 Ubuntu 操作系统?
    Linux环境下的Java(JDBC)连接openGauss数据库实践
    在Telegram营销后该如何进行客户管理
    中国设备工程杂志中国设备工程杂志社中国设备工程编辑部2022年第18期目录
    python-Matplotlib画图那些你不知道的事
  • 原文地址:https://blog.csdn.net/qq_33638188/article/details/128207826
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号