[Python]细节与使用经验
【版权声明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权)
https://www.cnblogs.com/cnb-yuchen/p/18031983
出自【进步*于辰的博客】
纯文字阐述,内容比较干。并且,由于考虑到时间长了恐有所遗漏,便即兴记录,并没有对内容进行筛选、排序。因此,大家在阅读时可以直接Ctrl + F进行检索。
1、细节积累
- 判断元素类型:
isinstance(a, b)/type(a)
(isinstance()
也可用于继承关系判断);
注:a 是变量;b 是类型,如:数字int
、浮点数float
、字符串str
、列表list
、元组tuple
、字典dict
、集合set
。 - 列表的起始索引是
0
,终止索引是-1
; pass
的作用是保持程序的完整性,仅用作占位符;while/for
都可以与else
连用。else
只会执行一次(即循环结束时),且会被break
“截胡”;(注:else
与while/for
同层次)- python 允许方法有多个返回值(以元组的形式返回),前提是返回前没有将其组合成序列(若已组合,那就是一个返回值),
- python 与 java 一样,都是基于面向对象编程。面向对象编程在程序执行效率上并没有绝对的优势,它主要是为了方便开发者组织管理代码、快速梳理熟悉各个业务领域逻辑的一种思想方式;
str
不能与int
串联(+
);
2、推导式
参考笔记二,P34.4。
“推导式”也称之为“解析式”,列表、字典、集合都具有推导式,作用是快速创建,常与range(int max)
连用。
示例:
# 列表推导式 l = [i for i in range(10)] print(l) l = [i for i in range(10) if i % 2 == 0] # 取偶数 print(l) # 字典推导式 m = {k: k*2 for k in range(10)} print(m) m = {k: k**2 for k in range(10)} print(m) # 集合推导式,会自动去重 s = {i**3 for i in range(5)} print(s) s = {i**3 for i in [0, 1, 2, 3, 4, 2, 3, 4]} # in 后面可以是任意序列 print(s)
打印结果:
3、关于缩进
参考笔记二,P34.6。
Python 中无“{}
”(花括号),代码块的区分不是通过{}
判断,而是通过“缩进”。“缩进”决定逻辑行的层次,同一层级的语句必须具有相同的缩进,如:循环多条语句,不是使用{}
将多条语句囊括,而是要求将这些语句的缩进一致。
若行末有“:
”(冒号),则下一行必须进行缩进,如:for
循环。
4、特殊指令符
4.1 del xx
del list[i] # 删除列表元素 del tuple # 删除整个元组 del map[key] # 删除字典映射
4.2 python fpath args
注:在终端(Terminal)或 cmd 执行。
运行源代码文件。其中,fpath 是源文件全限定名(若是在 cmd 执行,则fpath
为绝对路径);args 是命令行参数列表,可任意指定。
示例:
python model/Util.py name=csdn year=2023 # 运行 model 包下的Util.py文件,指定命令行参数 name=csdn,year=2023
最后
本文中的例子是为了方便大家理解和阐述知识点而简单举出的,旨在阐明知识点,并不一定有实用性,仅是抛砖引玉。
如果大家想要了解一些Python知识点,可查阅博文《[Python]知识点》。
本文持续更新中。。。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix