首页/新闻资讯/正文详情

Python入门核心知识盘点

发布时间:2026/9/24 15:29:44 来源:云帆数科 栏目:资讯中心
Python入门核心知识盘点
​概述计算机离不开硬件和软件硬件比如硬盘、CPU、显卡、内存等而软件则依赖各种计算机语言来实现。计算机语言的发展是从最基础的0和1打孔开始的也就是机器语言后来出现了汇编语言用助记符代替二进制指令更容易读写一些再后来发展出了像C和C这样的编译型语言——它们需要先用编译器把代码整个编译成机器码然后再运行。不过因为不同操作系统的机器码格式不同所以在Windows下编译的程序没法直接在Linux上运行。之后出现了解释型语言比如JavaScript。这类语言在运行时才逐行翻译并执行每次运行都要重新翻译。到了Java它结合了编译型和解释型的特点先用编译器把代码编译成一种中间格式叫字节码运行字节码时需要依赖对应操作系统的Java虚拟机JVM来执行。JVM相当于一个翻译官把字节码翻译成当前系统能理解的指令这样就实现了‘一次编译到处运行’。再到Python它其实也有编译和解释的过程但和Java不太一样。Python在执行时会先把代码编译成字节码然后由解释器解释执行。如果不导入外部模块生成的字节码通常只在内存里不会保存到硬盘也就是不‘落盘’这样修改代码后能快速重新编译。如果导入了外部模块Python会把对应模块的字节码保存成.pyc文件这样下次导入时可以直接用不需要重新编译。当然运行时这些字节码还是会加载到内存里执行的。正因为Python执行时明显依赖解释器所以大家一般把它归类为解释型语言。目前最常用的Python解释器是CPython也就是用C语言实现的那个官方版本。打印“Hello Python”的三种方式直接在命令行打印打开命令行CMD 或终端输入 python 进入交互模式然后输入print(Hello Python)通过脚本文件运行先创建一个后缀为 .py 的文件比如 hello.py用记事本或编辑器打开写上代码print(hello python)保存后在文件所在的文件夹里打开命令行输入python hello.py使用 PyCharm 运行打开 PyCharm创建一个新项目在项目里新建一个 Python 文件例如 hello.py输入同样的打印代码然后点击运行按钮或右键选择运行。执行后结果就会在 PyCharm 下方的控制台里显示出来。基础知识注释作用在代码中添加解释说明方便自己和其他人理解。计算机会自动忽略这些内容。分类单行注释使用## 这是一个单行注释print(Hello)# 注释也可以跟在代码后面多行注释使用三对引号单引号或双引号均可 这是一个多行注释 可以跨越多行。 通常用于函数或文件的整体说明。 print(World)注意严格来说三引号在Python中是定义“多行字符串”的语法。当这个字符串没有被赋值给任何变量或使用时它就相当于一个注释块。所以我们习惯上用它来进行多行注释。标识符标识符就是给变量、函数、类等起的名字。常见命名风格大驼峰命名法每个单词首字母大写。常用于类名。例如MyClassNameHttpRequestHandler小驼峰命名法第一个单词首字母小写后续单词首字母大写。在Python中不常用但在其他语言如Java中常见。例如myVariableNamecalculateTotalAmount蛇形命名法所有字母小写单词之间用下划线_连接。这是Python中变量和函数名的推荐风格。例如my_variable_namecalculate_total_amount命名规则可以由字母、数字、下划线组成。不能以数字开头例如2nd_place是无效的。区分大小写myVar和myvar是两个不同的标识符。避免使用Python的内置关键字如ifforclass等作为标识符。变量定义一个用于存储数据的“标签”或“名字”这个数据在程序运行期间可以被改变。语法变量名值例如age25name小明变量交换Python的语法糖交换两个变量的值在其他语言中通常需要一个临时变量# 传统方法ca ab bc但在Python中可以一行搞定非常简洁a,bb,a# Python 直接交换对变量的理解你可以把变量想象成一个贴纸标签而内存电脑的存储空间里有很多盒子内存地址存放着实际的值。a 10相当于把一张写着a的贴纸贴到了存放10这个数字的盒子上。a cccc相当于把a这张贴纸从原来的盒子撕下来贴到了存放cccc这个字符串的新盒子上。变量贴纸本身不“装”值它只是指向贴在那个值盒子所在的位置。常量定义在程序运行期间其值意图不被改变的量。提示Python语法上没有严格的常量机制主要依靠程序员的约定。约定通常使用全大写字母和下划线来命名常量以此提醒自己和他人不要修改它。PI3.14159MAX_CONNECTIONS100COMPANY_NAME我的公司进制以及原码、反码和补码进制进制就是以某个值为进位标准。十进制就是满 10 进 1二进制、八进制、十六进制等也是同样的道理。使用不同进制表示整数例如十进制数 35二进制以0b开头0b0010 0011八进制以0o开头0o43十六进制以0x开头0x23二进制转换成十进制以0b0101为例类比十进制比如数字 1234 可以表示为(1 × 10³) (2 × 10²) (3 × 10¹) (4 × 10⁰)权重从右往左分别是 10⁰、10¹、10²、10³。二进制也是类似的只是权重以 2 为底0b0101从右往左的权重是 2⁰、2¹、2²、2³因此(1 × 2⁰) (0 × 2¹) (1 × 2²) (0 × 2³) 1 0 4 0 5所以它对应的十进制数是 5。十进制转换成二进制以数字 11 为例找到刚好小于 11 的最大的 2 的次方这里是 82³。列出比它小的权重8、4、2、1。从高到低依次减11 − 8 3在权重 8 下写 1。3 4在权重 4 下写 0。3 − 2 1在权重 2 下写 1。1 − 1 0在权重 1 下写 1。得到二进制序列1011即0b1011。十六进制与十进制的转换十六进制 → 十进制如0x11权重为 16¹ 和 16⁰(1 × 16¹) (1 × 16⁰) 16 1 17。十进制 → 十六进制方法与十进制转二进制类似只是改为用 16 的权重进行减法或短除法计算。二进制和十六进制转换二进制 → 十六进制先向左补 0使总位数为 4 的倍数。例如0b110015 位补为0b0001 10018 位。每 4 位一组转换为十六进制0001→11001→9所以结果为0x19。十六进制 → 二进制将每位十六进制数展开为 4 位二进制再拼接。例如0x212→00101→0001拼接得到0b0010 0001。数据类型int 类型Python 中的int类型可以表示任意大小的整数包括负整数。在 CPython 解释器中小整数池数值在 -5 到 256具体范围可能随版本略有变化的整数会被预先加载到内存中。例如执行a 30时a会直接指向已存在的30所在的内存地址。大整数超出小整数池范围的整数只有在被使用时才会动态创建并缓存。但需要注意不同语句中的相同大整数如a 3000、b 3000可能指向不同的内存地址具体行为与 Python 版本及运行环境有关。相关函数id()获取对象的内存地址。type()获取变量的数据类型。isinstance(a, b)判断a是否是b类型或其子类的实例。例如若a是bool类型b是int类型会返回True因为bool是int的子类若两者都是int同样返回True否则返回False。float浮点类型a0.1b0.2cabprint(c)输出0.30000000000000004我们发现在进行浮点数计算时结果出现了微小的误差。这是由于二进制浮点数在计算机中表示时固有的精度限制并非“精度丢失”而是无法精确表示某些十进制小数。使用decimal模块中的Decimal类可以进行高精度的十进制数学运算从而避免此类问题fromdecimalimportDecimal aDecimal(0.1)# 注意这里传入的是字符串bDecimal(0.2)cabprint(c)# 输出0.3bool布尔类型aTruebFalseprint(a1)# Trueprint(b0)# Trueprint(ais1)# Falseprint(bis0)# FalseTrue和False在数值上分别等价于1和0因此使用比较值时会返回True。然而is运算符检查的是对象的身份标识即内存地址是否相同。True、False是独立的布尔对象而1和0是整数对象它们的身份不同因此is比较结果为False。string字符串初识反斜杠 \续行符在字符串中直接换行会导致语法错误可以使用反斜杠续行。print(hello \ world)# 输出hello world转义字符用于表示特殊字符或消除字符的特殊含义。print(It\s ok.)# 输出Its ok.print(Line1\nLine2)# 输出换行字符串驻留intern机制Python 会缓存不可变的字符串。在某些情况下如代码中直接出现的短字符串多个相同的字符串可能会指向同一个内存对象以节省内存。字符串缓冲池Python 在启动时会将部分常用的字符如 ASCII 字符预先缓存使用时直接引用以提高效率。数据类型转换自动类型转换隐式转换当不同类型的数据进行运算时Python 会自动向精度更高的类型转换。a1# intb2.1# floatcab# a 被隐式转换为 floatprint(c)# 输出3.1d5/2# 除法运算结果自动转为 floatprint(d)# 输出2.5强制类型转换显式转换使用内置函数进行类型转换。aint(1011,2)# 将二进制字符串转换为整数print(a)# 输出11字符的编码与解码计算机中存储和传输的数据本质是二进制。字符编码定义了字符与二进制数据之间的映射关系如 UTF-8、GBK。编码将字符转换为二进制数据str→bytes解码将二进制数据还原为字符bytes→str输入与输出输入使用input()函数获取用户输入返回的是字符串类型。nameinput(请输入你的名字)print(f你好{name}!)输出普通输出print()函数默认以换行符结尾可以通过end参数自定义。print(Hello,end! )# 输出Hello! 不换行print(World)格式化输出% 格式化传统方式name小明age18print(姓名%s年龄%d%(name,age))str.format()方法默认顺序print({} - {}.format(A,B))# A - B指定顺序print({1} - {0}.format(A,B))# B - A关键字参数print({name} - {age}.format(name小明,age18))数字格式化num1234.5678print({:*^15,.2f}.format(num))# ***1,234.57***# : 引导格式化说明# * 填充字符# ^ 居中对齐# 15 总宽度# , 千位分隔符# .2f 保留两位小数f-string推荐Python 3.6name小明print(f名字{name})num2.1print(f数值{num:*^10.2f})# ***2.10***

相关推荐

RunAnywhere Web SDK 架构与实战指南:基于 WASM + WebGPU 的浏览器端本地 AI 运行方案
RunAnywhere Web SDK 架构与实战指南:基于 WASM + WebGPU 的浏览器端本地 AI 运行方案

AI模型推理服务推理引擎本地部署多模态 【免费下载链接】runanywhere-sdks Production ready toolkit to run AI locally 项目地址: https://gitcode.com/gh_mirrors/ru/runanywhere-sdks 点击查看 免费下载 导读 RunAnywhere Web SDK 是 RunAnywhere 项目在浏览器… · 2026/9/24 15:29:31

ESP01 固件烧录全攻略:Flash Download Tool 从入门到精通
ESP01 固件烧录全攻略:Flash Download Tool 从入门到精通

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/24 15:29:31

X79平台M.2 NVMe固态升级指南:从接口原理到性能实测
X79平台M.2 NVMe固态升级指南:从接口原理到性能实测

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/24 15:29:31

tchMaterial-parser 使用教程:3 步把智慧教育平台电子课本存为本地 PDF
tchMaterial-parser 使用教程:3 步把智慧教育平台电子课本存为本地 PDF

tchMaterial-parser 使用教程:3 步把智慧教育平台电子课本存为本地 PDF 【免费下载链接】tchMaterial-parser 国家中小学智慧教育平台 电子课本下载工具,帮助您从智慧教育平台中获取电子课本的 PDF 文件网址并进行下载,让您更方便地获取课本内… · 2026/9/24 16:03:20

Skia 官方文档构建指南:使用 Doxygen 从源码生成 2D 图形库 API 文档
Skia 官方文档构建指南:使用 Doxygen 从源码生成 2D 图形库 API 文档

图形学 【免费下载链接】skia Skia is a complete 2D graphic library for drawing Text, Geometries, and Images. See documentation for contribution instructions. 项目地址: https://gitcode.com/gh_mirrors/ski/skia 点击查看 免费下载 本篇指南围绕 Skia 仓… · 2026/9/24 16:03:20

Flet ScrollDirection 详解:从滚动方向枚举到 OnScrollEvent 实战
Flet ScrollDirection 详解:从滚动方向枚举到 OnScrollEvent 实战

前端跨平台桌面应用移动开发 【免费下载链接】flet Build realtime web, mobile and desktop apps in Python only. No frontend experience required. 项目地址: https://gitcode.com/gh_mirrors/fl/flet 点击查看 免费下载 ScrollDirection 是 Flet 中描述用户主… · 2026/9/24 16:03:20

拓氪科技,用全域广告资源助力国内品牌扬帆出海
拓氪科技,用全域广告资源助力国内品牌扬帆出海

在全球化数字营销高速发展的当下,越来越多国内企业开启海外市场布局,海外推广成为品牌出海、订单增量、全球化品牌塑造的核心抓手。当下海外推广行业服务商数量繁多,但普遍存在资源零散、报价不透明、投放精准度低、落地案例同质化、售后运维… · 2026/9/24 16:03:08

应用案例 | 船舶海洋:基于MBSE 的船舶系统电磁兼容性设计专用软件开发
应用案例 | 船舶海洋:基于MBSE 的船舶系统电磁兼容性设计专用软件开发

一、项目背景随着船舶系统复杂度的不断提升,舰载电子设备的数量持续增加,系统间的电磁耦合关系也日益变得复杂,传统的基于文档的电磁兼容性设计方式已暴露出流程衔接性差、协同作业效率低、知识复用度不足等问题。以基于模型的系统工程&#… · 2026/9/24 16:03:02

软件测试的分类
软件测试的分类

软件测试的分类按手段划分:手工测试、自动化测试按是否运行代码划分:静态测试、动态测试按技术划分:黑盒测试、白盒测试、灰盒测试按阶段划分:单元测试、集成测试、系统测试、验收测试性能测试冒烟测试:对软件的基本功… · 2026/9/24 16:03:02

基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程
基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程

简介:这是一套面向计算机、人工智能、自动化等专业学生与教师的毕业设计级项目资源,围绕YOLOv8实现渔船作业监控系统,可用于毕设、课程设计、大作业或项目立项演示。压缩包共97个文件,约24.21MB,以70个Python源码文件为… · 2026/9/24 0:00:13

1D-CNN时间序列建模实战:从Conv1d原理到工业落地
1D-CNN时间序列建模实战:从Conv1d原理到工业落地

简介:面向时间序列数据建模的一维卷积神经网络完整实现,适合深度学习入门者及需要快速验证时序模型的研究者,能够从音频、文本、传感器或股价等序列中挖掘局部特征与时间依赖。压缩包体积很小,只有3KB,内含3个Python脚… · 2026/9/24 0:00:26

柔软的L:汉语语流中被忽视的舌肌张力控制
柔软的L:汉语语流中被忽视的舌肌张力控制

1. 这个“L”不是字母表里的L,而是舌尖上的L最近在几个方言群和语音教学社群里,反复看到有人发一句:“也说字母L:柔软的长舌”。初看以为是英语发音课笔记,点开才发现全是方言爱好者、播音系学生、语言康复师甚至戏曲演… · 2026/9/24 0:00:44

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码