python 66 个冷知识 0706

news2024/10/5 14:07:24

66个有趣的Python冷知识

  1. Python的名字来源

    • Python的名字不是来自蛇,而是来自英国的喜剧团体“蒙提·派森”。
  2. 多行字符串

    • Python支持使用三重引号 '''""" 来创建多行字符串。
  3. 链式比较

    • Python允许你进行链式比较,例如 1 < a < 3
  4. 强制换行

    • 你可以在Python中使用反斜杠 \ 来强制换行。
  5. Python中的else

    • 在循环中可以使用else语句。forwhile循环可以有一个else子句,它在循环没有遇到break终止时执行。
  6. 嵌套函数

    • 在Python中,你可以在函数内部定义另一个函数。
  7. 动态类型

    • Python是动态类型语言,你可以在运行时改变变量类型。
  8. 多赋值

    • 你可以在一行中给多个变量赋值,例如 a, b, c = 1, 2, 3
  9. 无参数返回值

    • 如果一个函数没有返回值,它会默认返回None
  10. 复数

    • Python原生支持复数,例如 a = 1 + 2j
  11. GIL(全局解释器锁)

    • 在CPython中,多线程受限于全局解释器锁(GIL),这限制了多线程并行执行。
  12. 列表推导式

    • 列表推导式是一种简洁的生成列表的方式,例如 [x*x for x in range(10)]
  13. 字典推导式

    • 类似于列表推导式,你也可以使用字典推导式,例如 {x: x*x for x in range(10)}
  14. 匿名函数

    • 使用 lambda 关键字可以创建匿名函数,例如 lambda x: x + 1
  15. 内置函数数量

    • Python内置了超过70个函数,可以通过 dir(__builtins__) 查看。
  16. 反转字符串

    • 你可以使用切片反转字符串,例如 s[::-1]
  17. 多重赋值和交换变量

    • 在Python中,交换两个变量的值非常简单:a, b = b, a
  18. 内存管理

    • Python使用引用计数和垃圾回收机制来管理内存。
  19. 函数注解

    • Python 3.0引入了函数注解,可以用来标注函数参数和返回值的类型,例如 def func(x: int) -> str:
  20. Zen of Python

    • 你可以在Python解释器中输入 import this 来查看Python之禅(The Zen of Python),它包含了Python设计的指导原则。
  21. 动态代码执行

    • 你可以使用 execeval 来动态执行Python代码。
  22. 多变量返回

    • 函数可以返回多个变量,例如 return a, b,并使用 a, b = func() 解包。
  23. 字节对象

    • Python中的字符串有strbytes两种类型,可以通过前缀b来创建字节对象。
  24. 条件表达式

    • Python支持条件表达式(即三元运算符),例如 x = a if condition else b
  25. 默认参数

    • 函数参数可以有默认值,例如 def func(x=10):
  26. 传递可变对象

    • 在函数中传递可变对象(例如列表或字典)时,修改对象会影响原始对象。
  27. 函数也是对象

    • 在Python中,函数也是对象,可以赋值给变量,作为参数传递,或作为返回值返回。
  28. 导入模块的别名

    • 使用 import module as alias 可以为导入的模块指定一个别名。
  29. 导入部分模块

    • 你可以从一个模块中导入部分内容,例如 from module import func
  30. 迭代器和生成器

    • Python支持迭代器和生成器,可以使用 yield 关键字创建生成器。
  31. 上下文管理器

    • 使用 with 关键字可以简化资源管理,例如文件操作 with open('file.txt') as f:
  32. 装饰器

    • 装饰器是一种用于修改函数行为的高级特性,使用 @decorator 语法。
  33. 元类

    • Python中的类是由元类创建的,可以通过自定义元类来修改类的创建行为。
  34. 鸭子类型

    • Python支持鸭子类型,不要求明确的接口,只要实现所需的方法即可。
  35. 单行代码块

    • Python允许你在同一行编写多条语句,用分号分隔,例如 a = 1; b = 2; c = a + b
  36. 字符串格式化

    • Python提供了多种字符串格式化方法,包括 % 操作符、str.format() 方法和 f-string(格式化字符串字面值)。
  37. 集合

    • Python内置集合类型,可以用花括号 {} 创建,例如 a = {1, 2, 3}
  38. frozenset

    • frozenset 是一种不可变集合,创建后不能修改。
  39. 命名元组

    • collections.namedtuple 提供了一种创建轻量级对象的方式,可以通过名称访问字段。
  40. 默认字典

    • collections.defaultdict 提供了一种字典的子类,可以在访问不存在的键时提供默认值。
  41. 计数器

    • collections.Counter 是一种用于计数的字典子类。
  42. 有序字典

    • collections.OrderedDict 是一种保持插入顺序的字典。
  43. 双向队列

    • collections.deque 提供了一种高效的双向队列。
  44. 全局变量

    • 在函数内部可以使用 global 关键字声明全局变量。
  45. 非局部变量

    • 在嵌套函数中可以使用 nonlocal 关键字声明非局部变量。
  46. 扩展列表

    • 使用 * 操作符可以将列表解包为独立的元素,例如 print(*[1, 2, 3])
  47. 扩展字典

    • 使用 ** 操作符可以将字典解包为独立的键值对参数,例如 func(**{'a': 1, 'b': 2})
  48. 参数解包

    • 函数定义中的 *args**kwargs 可以分别用于解包任意数量的位置参数和关键字参数。
  49. 模块缓存

    • Python会缓存导入的模块,可以通过 sys.modules 查看缓存的模块。
  50. 对象标识

    • 使用 id() 函数可以获取对象的唯一标识。
  51. 垃圾回收

    • Python使用垃圾回收机制管理内存,可以通过 gc 模块手动干预。
  52. 协程

    • 使用 asyncawait 关键字可以定义和使用协程。
  53. 多线程

    • Python提供了 threading 模块来实现多线程编程。
  54. 多进程

    • Python提供了 multiprocessing 模块来实现多进程编程。
  55. 虚拟环境

    • 使用 venvvirtualenv 可以创建独立的Python虚拟环境。
  56. 包管理

    • pip 是Python的包管理工具,用于安装和管理软件包。
  57. 导入钩子

    • 可以通过自定义导入钩子来修改模块的导入行为。
  58. 序列化

    • pickle 模块提供了对象序列化和反序列化的功能。
  59. 日期时间

    • datetime 模块提供了处理日期和时间的功能。
  60. 正则表达式

    • re 模块提供了正则表达式匹配功能。
  61. 单元测试

    • unittest 模块提供了编写和运行单元测试的框架。
  62. 文档生成

    • sphinx 是一个用于生成Python项目文档的工具。
  63. 代码风格

    • PEP 8 是Python的代码风格指南。
  64. 类型检查

    • mypy 是一个用于Python的静态类型检查工具。
  65. 代码格式化

    • black 是一个流行的Python代码格式化工具。
  66. 代码静态分析

    • pylint 是一个用于Python代码的静态分析工具。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1901093.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

51单片机嵌入式开发:2、STC89C52操作GPIO口LED灯

STC89C52操作GPIO口LED灯 1 芯片介绍1.1 芯片类型1.2 芯片系列说明 2 GPIO引脚寄存器说明3 GPIO操作3.1 GPIO输入3.2 GPIO输出3.3 GPIO流水灯3.4 Protues仿真 4 总结 1 芯片介绍 1.1 芯片类型 芯片采用宏晶科技品牌下的STC89C52RC单片机 选择STC89C52RC系列STC89C58RD系列单片…

ArrayList综合案例-模拟外卖中的商家系统

一案例要求&#xff1a; 二代码要求&#xff1a; package 重修;import java.util.ArrayList; import java.util.Random; import java.util.Scanner;import static java.lang.System.exit;public class first {public static void main(String[] args) {Scanner scnew Scanne…

迎接AI新时代:GPT-5即将登场的巨大变革与应用前瞻

迎接AI新时代&#xff1a;GPT-5即将登场的巨大变革与应用前瞻 &#x1f48e;1. GPT-5 一年半后发布&#xff1a;AI新时代的来临1.1 GPT-5的飞跃&#xff1a;从高中生到博士生 &#x1f48e;2. GPT-5的潜在应用场景&#x1f48e;2.1 医疗诊断和健康管理&#x1f48e;2.2 教育领域…

【LeetCode:3101. 交替子数组计数 + 滑动窗口 + 数学公式】

&#x1f680; 算法题 &#x1f680; &#x1f332; 算法刷题专栏 | 面试必备算法 | 面试高频算法 &#x1f340; &#x1f332; 越难的东西,越要努力坚持&#xff0c;因为它具有很高的价值&#xff0c;算法就是这样✨ &#x1f332; 作者简介&#xff1a;硕风和炜&#xff0c;…

基于Android Studio零食工坊

目录 项目介绍 图片展示 运行环境 获取方式 项目介绍 用户 可以浏览商品 &#xff0c; 查询商品 &#xff0c; 加入购物车 &#xff0c; 结算商品 &#xff0c; 查看浏览记录 &#xff0c; 修改密码 &#xff0c; 修改个人信息 &#xff0c; 查询订单 管理员 能够实现商品的…

Appium Inspector介绍和使用

一、什么是Appium Inspector 官方介绍&#xff1a;Overview - Appium Inspector 检查器的主要目的是提供应用程序页面源代码的检查功能。它主要用于测试自动化开发&#xff0c;但也可用于应用程序开发 - 或者如果只是想查看应用程序的页面源代码&#xff01; 从本质上讲&…

Tkinter布局助手

免费的功能基本可以满足快速开发布局&#xff0c; https://pytk.net/ iamxcd/tkinter-helper: 为tkinter打造的可视化拖拽布局界面设计小工具 (github.com) 作者也把项目开源了&#xff0c;有兴趣可以玩玩

【TB作品】数码管独立按键密码锁,ATMEGA16单片机,Proteus仿真 atmega16数码管独立按键密码锁

文章目录 基于ATmega16的数码管独立按键密码锁设计实验报告实验背景硬件介绍主要元器件电路连接 设计原理硬件设计软件设计 程序原理延时函数独立按键检测密码显示主函数 资源代码 基于ATmega16的数码管独立按键密码锁设计实验报告 实验背景 本实验旨在设计并实现一个基于ATm…

固态,机械,移动(U盘),sd卡,哪个更适合长期储存数据 保存数据用什么硬盘可靠 硬盘数据丢失怎么找回 硬盘维护注意事项

有关硬盘数据丢失的恢复技巧&#xff0c;这篇文章一定要收藏好。在硬盘使用过程中&#xff0c;很多情况都会导致数据丢失&#xff0c;例如硬盘跌落、病毒感染、系统文件损坏等。这时候&#xff0c;一定要采用正确的方法&#xff0c;抢救硬盘中存储的珍贵数据和文档。 有关长期保…

解决C++编译时的产生的skipping incompatible xxx 错误

问题 我在编译项目时&#xff0c;产生了一个 /usr/bin/ld: skipping incompatible ../../xxx/ when searching for -lxxx 的编译错误&#xff0c;如下图所示&#xff1a; 解决方法 由图中的错误可知&#xff0c;在编译时&#xff0c;是能够在我们指定目录下的 *.so 动态库的…

三丰云评测:免费虚拟主机与免费云服务器的全面对比

三丰云是一家知名的互联网服务提供商&#xff0c;专注于虚拟主机和云服务器的服务。在互联网技术日新月异的今天&#xff0c;选择一个优质的云服务提供商至关重要。本次评测将重点对比三丰云的免费虚拟主机和免费云服务器&#xff0c;帮助用户更好地选择适合自己需求的服务。首…

Apache Seata分布式事务原理解析探秘

本文来自 Apache Seata官方文档&#xff0c;欢迎访问官网&#xff0c;查看更多深度文章。 本文来自 Apache Seata官方文档&#xff0c;欢迎访问官网&#xff0c;查看更多深度文章。 前言 fescar发布已有时日&#xff0c;分布式事务一直是业界备受关注的领域&#xff0c;fesca…

【代码随想录】【算法训练营】【第60天】 [卡码107]寻找存在的路径

前言 思路及算法思维&#xff0c;指路 代码随想录。 题目来自 卡码网。 day 60&#xff0c;周六&#xff0c;ding ding~ 题目详情 [卡码107] 寻找存在的路径 题目描述 卡码107 寻找存在的路径 LeetCode类似题目1971 寻找图中是否存在路径 解题思路 前提&#xff1a; 思…

TQ15EG开发板教程:MPSOC创建fmcomms8工程

链接&#xff1a;https://pan.baidu.com/s/1jbuYs9alP2SaqnV5fpNgyg 提取码&#xff1a;r00c 本例程需要实现在hdl加no-OS系统中&#xff0c;通过修改fmcomms8/zcu102项目&#xff0c;实现在MPSOC两个fmc口上运行fmcomms8项目。 目录 1 下载文件与切换版本 2 编译fmcomms8项…

从0到1制作单只鳌虾运动轨迹追踪软件

前言 需要准备windows10操作系统&#xff0c;python3.11.9&#xff0c;cuDNN8.9.2.26&#xff0c;CUDA11.8&#xff0c;paddleDetection2.7 流程&#xff1a; 准备数据集-澳洲鳌虾VOC数据集 基于RT-DETR目标检测模型训练导出onnx模型进行python部署平滑滤波处理视频帧保留的…

Linux Centos7部署Zookeeper

目录 一、下载zookeeper 二、单机部署 1、创建目录 2、解压 3、修改配置文件名 ​4、创建保存数据的文件夹 ​5、修改配置文件保存数据的地址 ​6、启动服务 7、api创建节点 一、下载zookeeper 地址&#xff1a;Index of /dist/zookeeper/zookeeper-3.5.7 (apache.org…

在5G/6G应用中实现高性能放大器的建模挑战

来源&#xff1a;Modelling Challenges for Enabling High Performance Amplifiers in 5G/6G Applications {第28届“集成电路和系统的混合设计”(Mixed Design of Integrated Circuits and Systems)国际会议论文集&#xff0c;2021年6月24日至26日&#xff0c;波兰洛迪} 本文讨…

Stream 很好,Map 很酷,但答应我别用 toMap()

文章目录 Collectors.toMap() 的常见问题替代方案1. 使用 Collectors.groupingBy()2. 处理空值3. 自定义合并逻辑 总结 &#x1f389;欢迎来到Java学习路线专栏~探索Java中的静态变量与实例变量 ☆* o(≧▽≦)o *☆嗨~我是IT陈寒&#x1f379;✨博客主页&#xff1a;IT陈寒的博…

键盘异常的检测与解决方案

今天对象用Word写文档&#xff0c;按下Ctrl的时候&#xff0c;页面不停地上下滑动&#xff0c;导致无法正常编辑文本。 重启之后&#xff0c;仍然无法解决&#xff0c;推断是键盘坏了。 但是当按下Fn或其他功能键&#xff0c;焦点移除&#xff0c;页面就不会再抖动了。 现在…

2.2.2.1 如何在vscode 中设置ROS2的 用户代码片段

1. vscode中设置C版本的ROS2用户代码片段 1) 找到vscode 下的设置选项&#xff0c;选择用户代码片段 2) 选择用户代码片段后&#xff0c;会弹出选择框&#xff0c;如下图&#xff0c;输入C,选择 cpp.json 配置好的文件 进入如下文件&#xff0c;下图为本人配置的代码片段模版文…