1 基础
Python是一种高级、通用、解释型的编程语言,由荷兰的吉多·范罗苏姆于1990年代初设计。它因其简单易学、功能强大和广泛的应用领域而备受欢迎。
2 基本数据类型
2.1 python数字类型
2.1.1 数据类型的组成
2.1.1.1 整数—不同进制的转换
默认输入十进制
2.1.1.1.1 十进制与其他进制的转换
1 2 3 4
| a = bin(16) b = oct(16) c = hex(16) print(a,b,c)
|

2.1.1.1.2 其他进制转换成十进制
1 2
| d = int(a,2) e = int(b,8)
|
2.1.1.2 浮点数—不确定性
不确定小数问题

注:计算机采用二进制小数来表示小数部分
部分小数不能完全用二进制小数表示
通常情况下不会影响精度
四舍五入获取精度解
2.1.1.3 复数—a+bj
j可大写小写
2.1.2 数学运算操作符
1 2 3 4 5 6 7
| 1.加减乘除 +-\*/
2.取反 -
3.乘方运算 **
4.整数商// 和模运算%
|
2.1.2.1.1 几点说明
2.1.3 数字运算操作函数
2.1.3.1 求绝对值 abs()
2.1.3.2 求幕次方 pow()
2.1.3.3 四舍五入 round(x,n)
默认四舍五入为整数
2.1.3.4 整数商和模运算 divmod(x,y)
等价于返回二元元组(x//y,x%y)
2.1.3.5 序列最大/最小值 max() min()
1 2
| a = [3,2,3,6,9,4,5] print(max(a))//9
|
2.1.3.6 求和sum(x)
1
| print(sum([1,2,3,4,5,6,7,8,9]))//45
|
2.1.3.7 借助科学计算库 math\scipy\numpy
1 2 3 4
| import math print(math.exp(1)) //指数运算 e^x print(math.log2(2)) //对数运算 print(math.sqrt(4)) //开平方运算 等价于4^0.5
|
1 2 3 4 5
| import numpy as np a = [1,2,3,4,5] np.mean(a) //求均值 np.media(a) //求中位数 np.sta(a) //求标准差
|
3 python字符串类型
3.1 字符串
3.1.1 用””或’’括起来的任意字符
3.1.1.1 双中有单
3.1.1.2 单中有双
3.1.1.3 双中有双,单中有单
1
| print("\python\ is good")
|
3.1.1.4 转义符可以用来换行
3.2 字符串的索引
3.2.1 正向索引
1
| s = 'My name is Peppa pig'
|
1 2
| print(s[0]) //M print(s[1]) //y
|
3.2.2 反向索引
3.3 字符串的切片
1 2 3
| s = 'python' print(s[0:3:1]) \\pyt,1可以省略 print(s[0:3:2]) \\pt
|
3.4 字符串的处理
3.4.1 strip()切割函数
Python strip() 方法用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列。
注意:该方法只能删除开头或是结尾的字符,不能删除中间部分的字符。**
3.4.1.1 语法
1 2 3
| strip()方法语法:
str.strip([chars]);
|
3.4.1.2 参数
- chars — 移除字符串头尾指定的字符序列。
3.4.1.3 返回值
返回移除字符串头尾指定的字符生成的新字符串。
4 python逻辑
在Python中,控制流(Control Flow)主要通过条件判断和循环语句来实现。Python 摒弃了传统语言中的大括号 {},严格采用 缩进(Indentation) 来定义代码块的作用域。
4.1 判断(条件控制)
4.1.1 关系运算符与逻辑运算符
在进行条件判断前,通常需要构建条件表达式。表达式的结果为布尔值(True 或 False)。
4.1.1.1 关系运算符
用于比较两个值的大小或等值关系。
== (等于), != (不等于)
> (大于), < (小于)
>= (大于等于), <= (小于等于)
4.1.1.2 逻辑运算符
用于连接多个条件表达式。
and (逻辑与):所有条件均为True时返回True。
or (逻辑或):任意一个条件为True时返回True。
not (逻辑非):对布尔值取反。
4.1.2 if 语句的基础与进阶
4.1.2.1 单分支结构:if
当条件满足时,执行特定的代码块。
1 2 3
| age = 20 if age >= 18: print("已成年") # 条件为True,执行该语句
|
4.1.2.2 双分支结构:if-else
当条件满足时执行一个代码块,不满足时执行另一个。
1 2 3 4 5
| score = 59 if score >= 60: print("及格") else: print("不及格") # 59 < 60,因此执行else分支
|
4.1.2.3 多分支结构:if-elif-else
用于处理多种互斥的条件情况。Python 中使用 elif 代替 else if。
1 2 3 4 5 6 7 8 9
| score = 85 if score >= 90: print("优秀") elif score >= 80: print("良好") # 匹配此分支,后续elif将被忽略 elif score >= 60: print("及格") else: print("不及格")
|
注:条件判断是从上到下依次匹配的,一旦某个条件满足,执行对应代码块后就会自动跳出整个 if-elif-else 结构。
4.2 循环(迭代控制)
Python 提供了两种基本的循环机制:遍历循环(for)和条件循环(while)。
4.2.1 for 循环 (遍历循环)
for 循环主要用于遍历序列(如字符串、列表、元组)或任何可迭代对象。
4.2.1.1 遍历字符串与列表
1 2 3 4 5 6 7 8
| # 遍历字符串 for char in "Python": print(char)
# 遍历列表 fruits = ['apple', 'banana', 'cherry'] for fruit in fruits: print(fruit)
|
4.2.1.2 结合 range() 函数
range(start, stop, step) 函数常用于生成等差整数序列,配合 for 循环控制执行次数。
1 2 3 4 5 6 7
| # 生成从 0 到 4 的整数 for i in range(5): print(i) # 输出 0, 1, 2, 3, 4
# 生成从 2 到 8,步长为 2 的整数 for i in range(2, 9, 2): print(i) # 输出 2, 4, 6, 8
|
- 注:
range() 函数生成的序列遵循“左闭右开”原则,即包含 start,但不包含 stop。4.2.2 while 循环 (条件循环)
while 循环在条件表达式为 True 的前提下,不断重复执行代码块,直到条件变为 False。
4.2.2.1 基本语法
1 2 3 4
| count = 0 while count < 3: print("计数:", count) count += 1 # 必须有修改条件的语句,否则会陷入死循环
|
注:在编写 while 循环时,务必确保循环内部存在改变判断条件的逻辑,以避免程序发生无限循环(Memory Out)。
4.2.3 循环控制保留字
在循环执行过程中,有时需要提前改变循环的默认执行流程,主要使用 break 和 continue。
4.2.3.1 break:跳出整个循环
立刻终止当前所在的循环,不再执行循环体中剩余的语句,也不再进行下一次迭代。
1 2 3 4
| for i in range(1, 10): if i == 4: break # 当 i 等于 4 时,彻底结束整个 for 循环 print(i) # 仅输出 1, 2, 3
|
4.2.3.2 continue:跳过本次循环
结束当前这一轮迭代,直接跳到循环的开头,判断条件并准备进行下一次迭代。
1 2 3 4
| for i in range(1, 6): if i == 3: continue # 当 i 等于 3 时,跳过本次打印,继续 i=4 的循环 print(i) # 输出 1, 2, 4, 5
|
5 python 格式化输出
在Python中,字符串占位符是一种常见的格式化字符串的方法。它允许我们通过模板来创建字符串,并在稍后插入具体的值。
5.1 使用 % 运算符
1 2 3 4 5
| name = "Alice"
age = 25
print("Hello, my name is %s and I am %d years old" % (name, age))
|
输出结果将是 Hello, my name is Alice and I am 25 years old。
1 2 3 4 5
| name = "Alice"
age = 25
print("Hello, my name is {} and I am {} years old".format(name, age))
|
输出结果将是 Hello, my name is Alice and I am 25 years old。
5.3 使用 f-string(格式化字符串)
1 2 3 4 5
| name = "Alice"
age = 25
print(f"Hello, my name is {name} and I am {age} years old")
|
输出结果将是 Hello, my name is Alice and I am 25 years old。
6 容错机制
1 2 3 4 5 6 7 8 9
| try: 正常的操作 ...................... except: 发生异常,执行这块代码 ...................... else: 如果没有异常执行这块代码
|