五个你一定不知道的Python冷知识

Python 冷知识:你可能不知道的20个有趣特性 Python 作为一门广泛使用的高级编程语言,除了常见的基础语法外,还隐藏着许多有趣但不为人知的特性。以下是一些 Python 冷知识,帮助你更深入地理解这门语言。 阅读详情

图片

 

1、省略号也是对象

 

... 这是省略号,在Python中,一切皆对象。它也不例外。

在 Python 中,它叫做 Ellipsis 。

在 Python 3 中你可以直接写…来得到这玩意。

>>> ...
Ellipsis
>>> type(...)
<class 'ellipsis'>

而在 2 中没有…这个语法,只能直接写Ellipsis来获取。

>>> Ellipsis
Ellipsis
>>> type(Ellipsis)
<type 'ellipsis'>
>>>

它转为布尔值时为真

>>> bool(...)
True

最后,这东西是一个单例。

>>> id(...)
4362672336
>>> id(...)
4362672336

这东西有啥用呢?据说它是Numpy的语法糖,不玩 Numpy 的人,可以说是没啥用的。

在网上只看到这个 用 ... 代替 pass ,稍微有点用,但又不是必须使用的。

try:
    1/0
except ZeroDivisionError:
    ...

很多人学习python,不知道从何学起。
很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。
很多已经做案例的人,却不知道如何去学习更加高深的知识。
那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!
QQ群:609616831


2、类的首字母不一定是大写

在正常情况下,我们所编写的所见到的代码,好像都默许了类名首字母大写,而实例用小写的这一准则。但这并不是强制性的,即使你反过来的也没有关系。

但有一些内置的类,首字母都是小写,而实例都是大写。

比如 bool 是类名,而 True,False 是其实例;
比如 ellipsis 是类名,Ellipsis是实例;
还有 int,string,float,list,tuple,dict 等一系列数据类型都是类名,它们都是小写。

 

3、增量赋值的性能更好

诸如 += 和 *= 这些运算符,叫做 增量赋值运算符。

这里使用用 += 举例,以下两种写法,在效果上是等价的。

# 第一种
a = 1 ; a += 1

# 第二种
a = 1; a = a + 1

+= 其背后使用的魔法方法是 __iadd__,如果没有实现这个方法则会退而求其次,使用 __add__ 。

这两种写法有什么区别呢?

用列表举例 a += b,使用 __add__ 的话就像是使用了a.extend(b),如果使用 __add__ 的话,则是 a = a+b,前者是直接在原列表上进行扩展,而后者是先从原列表中取出值,在一个新的列表中进行扩展,然后再将新的列表对象返回给变量,显然后者的消耗要大些。

所以在能使用增量赋值的时候尽量使用它。

 

4、and 和or 的取值顺序

and 和 or 是我们再熟悉不过的两个逻辑运算符。而我们通常只用它来做判断,很少用它来取值。

如果一个or表达式中所有值都为真,Python会选择第一个值,而and表达式则会选择第二个。

>>>(2 or 3) * (5 and 7)
14  # 2*7

 

5、如何修改解释器提示符

这个当做今天的一个小彩蛋吧。应该算是比较冷门的,估计知道的人很少了吧。

正常情况下,我们在 终端下 执行Python 命令是这样的。

>>> for i in range(2):
...     print (i)
...
0
1

你是否想过 >>> 和 ... 这两个提示符也是可以修改的呢?

>>> import sys                      
>>> sys.ps1                         
'>>> '                              
>>> sys.ps2                         
'... '                              
>>>                                 
>>> sys.ps2 = '---------------- '                 
>>> sys.ps1 = 'Python编程时光>>>'       
Python编程时光>>>for i in range(2):     
----------------    print (i)                    
----------------                                 
0                                   
1                

 在这里还是要推荐下我自己建的Python学习群:609616831,群里都是学Python的,如果你想学或者正在学习Python ,欢迎你加入,大家都是软件开发党,不定期分享干货(只有Python软件开发相关的),包括我自己整理的一份2020最新的Python进阶资料和零基础教学,欢迎进阶中和对Python感兴趣的小伙伴加入!

                

Python这15种“冷知识”,你知道了解几种?(附详解) 这篇文章介绍你没有见过的Python15个冷知识点,欢迎补充! 1. 省略号也是对象 … 这是省略号,在Python中,一切皆对象。它也不例外。 在 Python 中,它叫做 Ellipsis 。 在 Python 3 中你可以直接写…来得到这玩意。 而在 2 中没有…这个语法,只能直接写Ellipsis来获取。 它转为布尔值时为真 最后,这东西是一个单例。 这东西有啥用呢?据说它是Nu... 阅读详情

相关推荐

Python的热门冷知识,还不赶紧记好

使用eval()函数处理字符串需要合理使用,假如你直接输入字符串“Hello”,eval()函数会去掉两个引号,这时候将其解释为一个变量,而之前又没有定义过Hello变量,解释器会报错.这语句中X是列表项即列表中的每个字典,list(x.values())是取字典的值转化为列表。)若对“‘Hello"'使用eval()函数,仅仅会去掉外层的双引号,还会留下一对单引号,此时’Hello‘会被解释为字符串。,所以如果你定义了一个列表,想要去除相同元素,可以转换为集合类型后再转换为列表即可。

阿玥的小博客 7807

三年经验的程序员都不一定知道的十五条Python冷知识,条条精辟!

级冷门的Python知识点,小编收集了好久一起分享出来给大家了,不喜勿喷~ ... 这是省掉号,在Python中,全部皆政策。它也不破例。在 Python 中,它叫做 Ellipsis 。在 Python 3 中你能够直接写…来得到这玩意。 如果有想学习python的程序员,可来我的python学习扣qun:711944363,免费送python的视频教程噢!我每晚上8点还会在群内直播讲解p...

457

大模型系统构建的“三驾马车”——Prompt、Context与Harness工程

在LLM应用开发的早期阶段,我们热衷于比拼“提示词”的精妙程度。那时,一个精心构造的思维链CoT就能让模型的表现提升10%以上。随着大模型从“玩具”走向“生产系统”,我们逐渐意识到:单一的 Prompt 只是起点,而非终点。 真正的工业级应用,需要构建一套三层递进的工程体系——Prompt Engineering、Context Engineering 和 Harness Engineering。

西木风落 604

编程与大语言模型的冷知识,你知道几个?

编程与大语言模型的冷知识,你都知道吗?

apk__的博客 1475

TI CC2642R蓝牙5.2模块实战:从零搭建智能门锁原型(附电路图)

本文详细介绍了如何基于TI CC2642R蓝牙5.2模块从零搭建智能门锁原型,涵盖硬件选型、低功耗配置、蓝牙安全交互等关键环节。通过CC2642R的高性能MCU和蓝牙5.2技术,开发者可实现低功耗、高安全性的智能门锁设计,并提供实用的电路图和PCB布局建议。

o5p6q的博客 110

基于人脸识别的智能门禁系统设计

在当前的技术背景下,本文精心打造了一款前沿的视频识别门禁控制系统。在进行调试的时候使用的软件是Keil,编写完代码,生成文件后用下载器下载到单片机上,就能够进行程序的调试了,本次设计实现了预先设定的目标,达到了预期的效果。本次设计的人脸识别的门禁控制系统其硬件部分是以STM32F103C8T6为核心的单片机,采用0V2640摄像头对人员的人脸识别,采用矩阵按键对系统的操作以及密码的输入,使用蜂鸣器来作为报警模块,开门装置是电子锁控制,显示设备采用OLED液晶显示,无线模块在一番思索后选择了蓝牙模块传输。

2401_86147581的博客 1296

不看会后悔的100个超有趣冷知识(一)

记事本冷知识如何让记事本卡住?让许多字符瞬间变没360冷知识这么写360一定报毒防病毒妙招360原来按名字报在这里插入图片描述未完待续~~~ 记事本冷知识 如何让记事本卡住? 在记事本中,㎜=mm 让许多字符瞬间变没 360冷知识 这么写360一定报毒 防病毒妙招 360原来按名字报 未完待续~~~ ··· ··· ··· ··· ...

c++的boost的博客 5061

在 CentOS7 下安装 Cadence IC验证平台 INCISIVE152

前言 本文所使用的软件 虚拟机软件:VMware Workstation 15 PRO 如何安装? 操作系统:CentOS-7, CentOS-7-x86_64-DVD-1810.iso 如何安装? 简介 INCISIVE Incisive是nc_verilog, nc_sim, nc_lauch,以及ABV,TBV的集合,用于仿真和验证。 InstallScape InstallSc...

沈醉不知的博客 2万+

谈谈 Python 那些不为人知的冷知识(三)

冷知识系列,直至今日,已经更新至第三篇。前两篇传送门小明给你准备好了,还没阅读的可以学习一下。还是老规矩,一篇只分享五个,有时间了就整理。不想错过的,千万记得关注一下。希...

罗罗攀 274

昇腾AI处理器Ascend C编程:从C/C++基础到高性能算子开发实战

异构计算是提升AI算力效率的核心技术,通过在CPU之外引入专用处理器(如GPU、NPU)协同工作,实现大规模并行计算。其原理在于将计算密集型任务卸载到专用硬件,利用其高并行架构加速处理。技术价值在于突破传统CPU的算力瓶颈,为深度学习训练与推理提供强大动力,广泛应用于模型部署、科学计算和高性能计算场景。本文聚焦昇腾AI处理器的原生编程语言Ascend C,它基于C/C++标准扩展,通过显式内存管理和任务并行模型,充分发挥达芬奇架构中Cube与Vector单元的性能。针对CANN算子开发,文章详解了从环境搭建

weixin_34411563的博客 366

【网络图】:附Origin详细画图教程

网络图,是一种由节点(或顶点)和连接这些节点的边(或链路)组成的图形结构。在网络图中,节点通常代表系统中的一个实体(如项目中的一项任务、通信网络中的一个设备、或运输网络中的一个站点),而边则代表这些实体之间的直接联系或流动(如任务的先后顺序、数据的传输路径、或乘客的旅行路线)。 有向图:如果边具有方向性,即从一个节点指向另一个节点,则称为有向图。这种图常用于表示具有明确先后顺序或方向性的系统,如项目管理中的任务依赖关系。 无向图:如果图中的边没有方向,则称为无向图。它适用于表示实体间相互关联但无明确方向性的

weixin_50236590的博客 3955

谈谈 Python 那些不为人知的冷知识(二)

点击上方“Python编程时光”,选择“置顶公众号”第一时间关注Python技术干货!小明在日常Code中遇到一些好玩,冷门的事情,通常都会记录下来。从上一篇的分享来看,...

罗罗攀 226

MediaCodec视频解码流程详解及参考demo

本文主要讲解mediacodec的视频解码流程,及demo参考例子。

分享音视频技术 7875

Python 调试冷知识

作者 | 喵叔 责编 | 刘静 出品 | 优快云(ID:优快云news) 对于 python 代码的调试我们通常都是使用 IDE 自带的调试功能。但是 IDE 提供的调试功能存在局限性,例如在测试服务器上调试代码,但是又不可能在测试服务器上安装 IDE 进行调试。这时我们就可以利用下面所讲解的三个工具进行调试。 零、准备调试代码 在讲解三个调试工具前,我们先编写待调试的代码...

优快云资讯 8173

【实战】CANOE实现UDS安全访问过程的CAPL脚本

首先我已经有了包含安全访问算法的dll文件,并通过Diagnostics/ISO TP Configuration中加载了此dll文件,如下。在on start部分,要将“ECU qualifier“作为参数,执行diagSetTarget函数。这个函数是用于设置tester从现在开始与之通信的目标ECU,并配置/建立与该ECU的通信通道。我最近在做密钥学习上位机时,遇到一些问题:如何用CAPL脚本实现安全访问过程?ECU Qualifier可以通过加载cdd文件后,在如下位置找到。CAPL脚本如何编写。

weixin_46481662的博客 4939

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

不告诉你的话,你永远也不知道的Python冷知识

不告诉你的话,你永远也不知道的Python冷知识

m0_58477260的博客 246

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

python为什么冷门_谈谈 Python 那些不为人知的冷知识(二)

小明在日常Code中遇到一些好玩,冷门的事情,通常都会记录下来。从上一篇的分享来看,仍然有不少 Pythoner 对这些冷知识存在盲区,所以今天迎来第二篇。如果上篇你还没来得及查看,可以点击下方传送门直接进入。还是老规矩,一篇只分享五个,有时间了就整理。不想错过的,千万记得关注一下。希望大家有其他冷知识,可以向我投稿。有小红包奖励噢。01默认参数最好不为可变对象函数的参数分三种可变参数默认参数关键...

weixin_39574720的博客 170

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

python 覆盖list_谈谈 Python 那些不为人知的冷知识(二)

出处(Python编程时光)小明在日常Code中遇到一些好玩,冷门的事情,通常都会记录下来。从上一篇的分享来看,仍然有不少 Pythoner 对这些冷知识存在盲区,所以今天迎来第二篇。如果上篇你还没来得及查看,可以点击下方传送门直接进入。谈谈 Python 那些不为人知的冷知识(一)还是老规矩,一篇只分享五个,有时间了就整理。不想错过的,千万记得关注一下。希望大家有其他冷知识,可以向我投...

weixin_36394468的博客 132

Python 这些冷知识你知道几个?

点击上方"brucepk",选择"置顶公众号"第一时间关注 Python 技术干货!“ 阅读文本大概需要 2.1 分钟今天给大家分享下 Python ...

Python知识圈 337

你不知道的 Python 冷知识

Python 是一个最近爆红的编程语言,这门语言堪称什么事都能干,而且简单易上手。 Python 这门语言事实上有很多东西值得我们探究,然而有些部分却被大家忽略了,这次的 Chat 就是为了帮助大家更加深入,全面地了解 Python,接触 Python 的更多"冷知识"。 注意事项:这次的 Chat 适用于已经熟悉 Python 基础的人们,零基础小白勿进。 本场 Chat 你将学到如下内容: ...

GitChat 403

Python的使用技巧和冷知识( 50条 )

Python的使用技巧和冷知识。

apk__的博客 861

python冷知识

目录 省略号也是对象 奇怪的字符串 and 和 or 的取值顺序 访问类中的私有方法 时有时无的切片异常 两次 return for 死循环 intern机制 省略号也是对象 在python中一...

weixin_38166793的博客 343

那些让你惊掉下巴到肚皮上的python冷知识(二)

一、我不是我 现在,我们在交互模式下分别定义两个变量:a,b,他们的值都等于200:

曲鸟 1万+

python每行输出五个_Python 调试冷知识

作者 | 喵叔责编 | 刘静出品 | 优快云(ID:优快云news)对于 python 代码的调试我们通常都是使用 IDE 自带的调试功能。但是 IDE 提供的调试功能存在局限性,例如在测试服务器上调试代码,但是又不可能在测试服务器上安装 IDE 进行调试。这时我们就可以利用下面所讲解的三个工具进行调试。零、准备调试代码在讲解三个调试工具前,我们先编写待调试的代码。代码很简单,就是计...

weixin_39992483的博客 1452

Python 函数的15个冷知识

print(outer()) # 输出: Hello from inner。

a181001_的博客 311

谈谈你了解的python_谈谈 Python 那些不为人知的冷知识(六)

冷知识系列,直至今日,已经更新至第六篇。前五篇传送门小明给你准备好了,还没阅读的可以学习一下。还是老规矩,一篇只分享五个,有时间了就整理。不想错过的,千万记得关注一下。01链式比较先给看一个示例>>>False==False==TrueFalse你知道这个表达式会返回 False 吗?我再给你举个例子,你可能就懂了。f18>False==FalseandFalse==T...

weixin_39761255的博客 128
上一篇: 网友用Python炫技却被骂,为啥?
下一篇: 20行代码让你的电脑自动合成大西瓜!这么厉害不来体验一下吗?
python阿喵
博客等级 码龄6年 169粉丝 127原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值