1 基础
Python是一种高级、通用、解释型的编程语言,由荷兰的吉多·范罗苏姆于1990年代初设计。它因其简单易学、功能强大和广泛的应用领域而备受欢迎。
2 基本数据类型
2.1 python数字类型
2.1.1 数据类型的组成
2.1.1.1 整数—不同进制的转换
默认输入十进制
-
注:二进制0b、八进制0o、十六进制0x
2.1.1.1.1 十进制与其他进制的转换
a = bin(16)
b = oct(16)
c = hex(16)
print(a,b,c)
-
注:上述转化后均为字符串型
2.1.1.1.2 其他进制转换成十进制
d = int(a,2)
e = int(b,8)2.1.1.2 浮点数—不确定性
不确定小数问题
print(0.1+0.2)
-
注:计算机采用二进制小数来表示小数部分
-
部分小数不能完全用二进制小数表示
-
通常情况下不会影响精度
四舍五入获取精度解
b = roud(a,1)
print(b)2.1.1.3 复数—a+bj
j可大写小写
2.1.2 数学运算操作符
1.加减乘除 +-\*/
2.取反 -
3.乘方运算 **
4.整数商// 和模运算%
13//5 #213%5 #32.1.2.1.1 几点说明
- 整数与浮点数运算为浮点数
- 除法运算为浮点数
2.1.3 数字运算操作函数
2.1.3.1 求绝对值 abs()
2.1.3.2 求幕次方 pow()
pow(2,5)#等价于2**5pow(2,5,3)#等价于2**5%32.1.3.3 四舍五入 round(x,n)
默认四舍五入为整数
round(1.612,2)2.1.3.4 整数商和模运算 divmod(x,y)
等价于返回二元元组(x//y,x%y)
divmod(13,5)//(2,3)2.1.3.5 序列最大/最小值 max() min()
max(3,2,6,9,4,5)//9a = [3,2,3,6,9,4,5]
print(max(a))//92.1.3.6 求和sum(x)
print(sum([1,2,3,4,5,6,7,8,9]))//452.1.3.7 借助科学计算库 math\scipy\numpy
import math
print(math.exp(1)) //指数运算 e^x
print(math.log2(2)) //对数运算
print(math.sqrt(4)) //开平方运算 等价于4^0.5import 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 双中有单
print("'python'")3.1.1.2 单中有双
print('"python"')3.1.1.3 双中有双,单中有单
print("\python\ is good")3.1.1.4 转义符可以用来换行
a = "pyth\
n"3.2 字符串的索引
3.2.1 正向索引
s = 'My name is Peppa pig'print(s[0]) //M
print(s[1]) //y3.2.2 反向索引
print(s[-1]) //g3.3 字符串的切片
s = 'python'
print(s[0:3:1]) \\pyt,1可以省略
print(s[0:3:2]) \\pt3.4 字符串的处理
3.4.1 strip()切割函数
Python strip() 方法用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列。 **注意:该方法只能删除开头或是结尾的字符,不能删除中间部分的字符。
3.4.1.1 语法
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
当条件满足时,执行特定的代码块。
age = 20
if age >= 18:
print("已成年") # 条件为True,执行该语句
4.1.2.2 双分支结构:if-else
当条件满足时执行一个代码块,不满足时执行另一个。
score = 59
if score >= 60:
print("及格")
else:
print("不及格") # 59 < 60,因此执行else分支
4.1.2.3 多分支结构:if-elif-else
用于处理多种互斥的条件情况。Python 中使用 elif 代替 else if。
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 遍历字符串与列表
# 遍历字符串
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 循环控制执行次数。
# 生成从 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 基本语法
count = 0
while count < 3:
print("计数:", count)
count += 1 # 必须有修改条件的语句,否则会陷入死循环
-
注:在编写
while循环时,务必确保循环内部存在改变判断条件的逻辑,以避免程序发生无限循环(Memory Out)。
4.2.3 循环控制保留字
在循环执行过程中,有时需要提前改变循环的默认执行流程,主要使用 break 和 continue。
4.2.3.1 break:跳出整个循环
立刻终止当前所在的循环,不再执行循环体中剩余的语句,也不再进行下一次迭代。
for i in range(1, 10):
if i == 4:
break # 当 i 等于 4 时,彻底结束整个 for 循环
print(i) # 仅输出 1, 2, 3
4.2.3.2 continue:跳过本次循环
结束当前这一轮迭代,直接跳到循环的开头,判断条件并准备进行下一次迭代。
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 使用 % 运算符
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。
5.2 使用 format() 方法
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(格式化字符串)
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 容错机制
try:
正常的操作
......................
except:
发生异常,执行这块代码
......................
else:
如果没有异常执行这块代码