(二)Python的历史
宏观上:python2 与 python3 区别:
python2:源码不标准,混乱,重复代码太多
python3:统一标准,去除重复代码
(三)Python的环境
1、编译型:一次性将所有程序编译成二进制文件
缺点:开发效率低,不能跨平台
优点:运行速度快
代表语言:C,C++等
2、解释型:当程序执行时,一行一行的解释
优点:开发效率高,可以跨平台
缺点:运行速度慢
代表语言:Python,PHP等
(四)Python的发展
(五)Python的种类
1、运行第一个py文件:
python3x :python 文件路径 回车
python2x :python2 文件路径 回车
## ps:若存在两个版本,需在python2.x的安装路径下把"python.exe"文件重命名为"python2.exe"
2、Python2.x和Python3.x的区别:
Python2的默认编码方式是ascii码 解决方式:在文件的首行:# -*- encoding:utf-8 -*-
Python3的默认编码方式是utf-8
(六)变量
1、定义:就是将一些运算的中间结果暂存到内存中,以便后续代码调用
2、定义变量需注意:
①必须由数字,字母,下划线任意组合,且不能数字开头
②不能是python中的关键字
③变量具有可描述性,要有意义
④不能是中文
(七)常量
定义:计算机内存里不变的量,如π
## ps:Python用全大写的字母来定义常量:BIR_OF_CHINA = 1949
(八)注释
作用:方便自己或方便他人理解代码
单行注释:行首添加"#"
多行注释:①'''被注释内容'''
②"""被注释内容""
(九)用户交互(input)
1、等待输入
2、将要输入的内容赋值给了前面变量
3、input出来的数据类型全部是 str 形式
(十)基础数据类型初始
1、数字:int
运算:+ - * / % ** //
方法:i = 10
i.bit_length() 把数字转换成二进制,算出其长度
## ps:①type()可查看数据类型
②字符串转化成数字:int(str) 条件:str必须是数字组成的
③数字转化成字符串:str(int)
2、字符串:str
Python当中凡是用引号引起来的都是字符串
相加:字符串的拼接。
相乘:str * int
①字符串的索引与切片 ## 切片 :顾头不顾尾
[首:尾:步长] 步长默认为空

②字符串的操作
s = 'woXUExiPython'
s.capitalize() ## 字符串首字母大写
s.upper() ## 全大写
s.lower() ## 全小写
## ps:验证码不区分大小写:

s.swapcase() ## 大小写翻转
s.title() ## 每个用特殊字符、数字或空格隔开的单词,首字母大写
s.center() ## 居中,默认空格填充 pg:s5 = s.center(20,'~') -----> ~~~~~~~xuexi~~~~~~~~
s.expandtabs() ## 在字符串中加上"\t",如果"\t"前面不够八个字符,用空格补充至八个

s.startswith() ## 以什么开头,返回 True 或 False
s.endswith() ## 以什么结尾,返回 True 或 False
s.find() ## 通过元素找索引,找不到返回-1
s.index() ## 通过元素找索引,找不到报错
s.strip() ## 删除字符串前后空格,扩展有 rstrip 删除右边;lstrip 删除左边

s.count() ## 返回某(个/组)字符的个数
s.len() ## 返回字符串的长度
s.isdigit() ## 判断字符串是否全部由数字组成,返回 True 或 False
s.isalpha() ## 判断字符串是否全部由字母组成,返回 True 或 False
s.isalnum() ## 判断字符串是否由数字或字母任意组成,返回 True 或 False
s.split() ## 将字符串分离,返回列表

s.replace() ## 替换

3、布尔值:bool
返回:True、False
## ps:非零数字和非空字符串都是True,空格也算一个字符
s = "" -----> False
s = "0" -----> True
s = " " -----> True
(十一)if
格式:①if 条件:
结果
②if 条件:
结果
else:
结果
③if 条件:
结果
elif 条件:
结果
....
else:
结果
(十二)while
格式:while 条件:
循环体
1、无限循环
2、终止循环:①改变条件,使其不成立
②使用break,跳出循环
③使用continue,返回上面的循环,不执行下面的循环里的语句
## ps:while 1: 比 while True: 效率高,一般用while 1:
(十三)while else
格式:while 条件:
循环体
break; ## ps:倘若break没有发挥作用跳出循环,则执行下面的else语句;跳出则不执行else语句
else:
结果
(十四)格式化输出
①占位符:%

## pg:倒数第二个%为转义字符
② format

(十五)初始编码
1、应用:电报,电脑的传输,存储都是01010101
2、历史:①美国最早创建的“密码本”ascii 涵盖了英文字母大小写,特殊字符,数字,但是 ascii 只能表示256(2 ** 8)种可能,不够;
②然后创建了万国码 unicode ,32位表示一个中文,太浪费;
③Unicode 升级为 utf-8 utf-16
8位(bit) = 1字节(byte)
utf-8:一个字符最少用8位去表示,英文用8位,即:1个字节
欧洲文字用16位去表示,即:2个字节
中文用24 位去表示,即:3个字节
utf-16 一个字符最少用16位去表示
## ps:gbk 编码:中国人自己发明的,两个字节表示一个中文
8bit | = | 1bytes |
1024bytes | = | 1kb |
1024kb | = | 1MB |
1024MB | = | 1GB |
1024GB | = | 1TB |
(十六)逻辑运算
重点:and、or、not
## ps:①优先级:()> not > and > or
② int ----> bool 非零 转换成 bool 为 True ;零 转换成 bool 为 False
③ print(x or y) 如果 x 为 非零数字,则返回 x ,否则返回 y
pg:print(1 or 3) ----> 1
print(0 or 2) ----> 2
④ and 与 or 返回结果相反
pg:print(1 and 3) ----> 3
print(0 and 2) ----> 0
⑤ 面试题:print(3 > 1 or 2 and 3) ## 第一步:2 and 3 返回 3
第二步:3 > 1 or 3 返回 True
(十七)for
for 变量 in 可迭代对象:
pass

## ps:li = ['famcoo', 'appleya', 'faustina']
for index, i in enumerate(li,1):
print(index, i)
默认索引从 0 开始,第二个参数可设定起始索引值
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)