Python(运算与操作)
目录
1.运算与操作
1.四则运算
2.取整与取余
3.字符串操作
1.字符串拼接(+)
2.字符串重复(*)
3.索引(从 0 开始)
4.切片 [start:end:step]
5. 常用方法
4.格式化输出
1.传统的 % 格式化(类似 C 语言)
2.format() 方法(Python 2.6+)
3.f-string(Python 3.6+,推荐)
4.控制小数精度
1.运算与操作
1.四则运算
在编程中四则运算包括加、减、乘、除
这些操作可以对整数、浮点数等
数据类型进行计算,用于构建复杂的算法和函数
Python 中的加减乘除与数学中几乎一致,注意除法/的结果总是浮点数(即使能整除)。
# 基本计算 a = 10 b = 3 c = 5 print(a + b) # 加法:13 print(a - b) # 减法:7 print(a * b) # 乘法:30 print(a / b) # 除法:3.3333333333333335 print(a / c) # 除法 / 的结果总是浮点数,即使能整除,2.0对于四则运算来说,我们可以记住参与计算的有浮点型的话,结果是一定是浮点型;参与计算是整型
的话,结果一定是整型(除法例外)
小技巧:使用+还可以拼接字符串
2.取整与取余
在编程中取整是指无论小数部分是多少,都只保留整数部分
取余是当一个数除以另一个数后,余下的部分
10除以3等于3余1,所以取整结果是3取余结果是1
在处理整数时,经常需要获取整除的商和余数。
//:向下取整(floor division),返回整数部分(截断小数)%:取余(modulo),返回余数
a = 17 b = 5 answer1 = a // b # 17 ÷ 5 = 3.4,向下取整 → 3 answer2 = a % b # 17/5=3....2 print(answer1) # 3 print(answer2) # 2注意:负数时//的结果会向下取整(向负无穷),而不是简单截断。
print(-17 // 5) # -4 (因为 -3.4 向下是 -4) print(-17 % 5) # 3 (满足公式 a = b * (a//b) + (a%b))3.字符串操作
字符串是 Python 中最常用的数据类型之一。我们可以对字符串进行拼接、重复、索引访问、切片、长度获取等操作。
1.字符串拼接(+)
str1 = "Hello" str2 = "World" print(str1 + " " + str2) # Hello World2.字符串重复(*)
print("Ha" * 3) # HaHaHa3.索引(从 0 开始)
s = "Python" print(s[0]) # P print(s[3]) # h print(s[-1]) # n(负索引表示倒数)如果超出范围会报错 IndexError: string index out of range
如
s = "Python" print(s[6])4.切片 [start:end:step]
Python 中通过
[start:stop:step]对序列(字符串、列表等)进行切片。
第一个冒号:分隔
start索引和stop索引。第二个冒号:分隔
stop索引和step步长。省略某个部分时,使用默认值:
start省略 → 从开头(索引 0)开始
stop省略 → 一直取到末尾
step省略 → 步长为 1
s = "Hello, World!" #不要忽视","后面的空格 print(s[0:5]) # Hello(结束索引不包含) print(s[7:12]) # World print(s[::2]) # Hlo ol!(步长为2) print(s[::-1]) # !dlroW ,olleH(反转字符串)5. 常用方法
text = " python programming " print(text.upper()) # 全部大写 print(text.strip()) # 去掉首尾空格 print(text.replace("python", "Java")) # 替换 print(len(text)) # 字符串长度4.格式化输出
在编程中格式化输出,是指按指定的格式输出数据
包括控制输出的格式精度、小数位数,以便更好的展示和处理数据
格式化输出,通常使用占位符和格式说明符,来指定输出的内容和格式
输出信息时,我们经常需要将变量嵌入到字符串中。Python 提供了多种格式化方式。
1.传统的%格式化(类似 C 语言)
name = "Alice" age = 25 print("My name is %s and I am %d years old." % (name, age)) # 输出:My name is Alice and I am 25 years old.%s→ 字符串 %d→ 整数%f→ 浮点数
2.format()方法(Python 2.6+)
name = "Alice" age = 25 print("My name is {} and I am {} years old.".format(name, age)) # 可以通过位置或名称更灵活地控制 print("I am {1} years old, and my name is {0}.".format(name, age))3.f-string(Python 3.6+,推荐)
在字符串前加f,用大括号{}直接写入变量或表达式。
name = "Alice" age = 25 print(f"My name is {name} and I am {age} years old.") print(f"10 + 20 = {10 + 20}") # 甚至可以写表达式f-string 转换机制中的一个关键点:f-string 确实会在最后自动调用str()把结果转为字符串,但这个过程发生在表达式先求值之后。
name = "Alice" age = 25 print(f"10 + 20 = {age + 20}") #可以 print(f"10 + 20 = {name + 20}") #不行报错 TypeError: can only concatenate str (not "int") to str
{name + age}
表达式是
name + agePython 必须先计算这个加法:
"Alice" + 25此时
+运算符的规则是:
如果左边是字符串,右边必须是字符串(字符串拼接)
如果左边是数字,右边必须是数字(数字加法)
这里左边是字符串
"Alice",右边是整数25,类型不匹配
→表达式求值阶段就抛出TypeError错误发生在 f-string 还没有机会帮你自动转换之前
4.控制小数精度
pi = 3.1415926 print(f"π ≈ {pi:.2f}") # 保留两位小数 → π ≈ 3.14 print("{:.3f}".format(pi)) # 3.142{pi:.2f}中:
pi→ 要输出的变量
:→ 表示“接下来是格式规则”
.2f→ 具体格式:f表示固定小数点的浮点数格式,.2表示保留 2 位小数
"{:.3f}"中:
:之前可以是空({}默认取第一个参数)也可以有位置索引如{0:.3f}
:后面的.3f同样表示保留 3 位小数
这里:在 Python 格式化字符串(无论是 f-string 还是.format()方法)中,是一个分隔符,用来引入“格式说明符”(format specifier)。
冒号左边是要格式化的对象(或表达式),右边是你想让它“长什么样”的规则。
