Python 的运算符和语句(条件、循环、异常)基本使用指南

简介: Python 的运算符和语句(条件、循环、异常)基本使用指南

运算符的分类

  • 算数运算符
  • 赋值运算符
  • 复合赋值运算符
  • 比较运算符
  • 逻辑运算符


算数运算符

运算符 描述 实例
+ 1 + 1 输出结果为 2
- 1 - 1 输出结果为 0
* 2 * 2 输出结果为 4
/ 10 / 2 输出结果为 5
// 整除 9 // 4 输出结果为 2
% 取余 9 % 4 输出结果为 1
** 指数 2 ** 4 输出结果为 16,2 * 2 * 2 * 2
() 小括号 小括号用来提高运算优先级,即 (1 + 2) * 3 输出结果为 9

注:

  • 混合运算优先级顺序: () ⾼于 ** ⾼于 * / // % ⾼于 + -
  • 由于算术运算符是 双目运算符 ,即有两个操作数参加运算,当参加运算的两个操作数的类型不一致时,首先转换成同一类型,然后进行运算,否则会提示错误。转换的基本规则是:
  • 如果参加算术运算的两个操作数中有一个是 复数 ,则把另一个也转换为复数;
  • 如果两个操作数中有一个是 浮点数 ,则把另一个也换成浮点数;
  • 如果两个操作数中有一个是 长整数 ,则把另一个也转换成长整数。
  • 转换时不同类型之间的转换必须遵守一定转换方向,例如不可以把一个浮点数转换为一个整数,也不能把一个复数转换为其它数值类型。


赋值运算符

  • 单个变量赋值(简单赋值)
num = 1
print ( num )
  • 多个变量赋值(序列赋值)在序列赋值语句中,等号左侧是元组或列表表示的多个变量,等号右侧是元组、列表或字符串等序列表示的数据。Python 按先后顺序依次将数据赋值给变量。
num1, float1, str1 = 10, 0.5, 'hello world'
print(num1)
print(float1)
print(str1)
  • 注:
  • 等号右侧为字符串时,Python 会将字符串分解为单个字符,依次赋值给各个变量,此时,变量个数和字符个数必须相等,否则会出错;
a, b, c, d, f = 'hello'
print(a)
print(b)
print(c)
print(d)
print(f)
  • 序列赋值时,可以在变量名之前使用 *,不带星号的变量仅匹配一个值,剩余的值作为列表赋值给带星号的变量。
a, b, *c = 'hello'
print(a)
print(b)
print(c)
  • 多变量赋相同值(多目标赋值)
a = b = 10
print(a)
print(b)


复合赋值运算符

运算符 描述 实例
+= 加法赋值运算符 c += a 等价于 c == c + a
-= 减法赋值运算符 c -= a 等价于 c == c - a
*= 乘法赋值运算符 c *= a 等价于 c == c * a
/= 除法赋值运算符 c /= a 等价于 c == c / a
//= 整除法赋值运算符 c //= a 等价于 c == c // a
%= 取余法赋值运算符 c % = a 等价于 c == c % a
**= 幂赋值运算符 c **= a 等价于 c = c ** a


比较运算符

运算符 描述
== 判断相等。如果两个操作数的结果相等,则条件结果为真(True),否则为假(False)
!= 不等于。如果两个操作数的结果不相等,则条件结果为真(True),否则为假(False)
> 运算符左侧操作数结果是否大于右侧操作数结果,如果大于,则条件为真,否则为假
< 运算符左侧操作数结果是否小于右侧操作数结果,如果小于,则条件为真,否则为假
>= 运算符左侧操作数结果是否大于等于右侧操作数结果,如果大于等于,则条件为真,否则为假
<= 运算符左侧操作数结果是否小于等于右侧操作数结果,如果小于等于,则条件为真,否则为假


逻辑运算符

运算符 逻辑表达式 描述 实例
and x and y 布尔"与":x 和 y 均为 True,则 x and y 为 True,否则为 False True and False,返回 False
or x or y 布尔"或":x 和 y 均为 False,则 x and y 为 False,否则为 True True or False,返回 True
not not x 布尔"非":如果 x 为 True,返回 False。如果 x 为 False,返回 True not True,返回 False


三元运算符

在 Python 中,三元运算符(也称为条件运算符)是一种简洁的方式来编写条件表达式

  • 语法结构如下:
value_if_true if condition else value_if_false
# 示例
x = 10
y = 20
max_value = x if x > y else y   # 输出:20


条件语句(if-elif-else)

  • if 语句
if 条件:
  条件成⽴执⾏的代码1
  条件成⽴执⾏的代码2
  ......
  • if…else…
if 条件:
  条件成⽴执⾏的代码
  ......
else:
  条件不成⽴执⾏的代码
  ......
  • 多重判断
if 条件1:
  条件1成⽴执⾏的代码
  ......
elif 条件2:
  条件2成⽴执⾏的代码
  ......
......
else:
  以上条件都不成⽴执⾏执⾏的代码
  • if 嵌套
if 条件1:
  条件1成⽴执⾏的代码
  ......
  if 条件2:
    条件2成⽴执⾏的代码
    ......


循环语句(for、while)

  • for 循环for 循环是 Python 中最常用的循环语句之一,可以遍历任何序列,如一个列表或者一个字符串。基本语法为:
for variable in sequence:
    # 循环体
[else]
  # 循环体
  • variable :表示变量名
  • sequence :表示要遍历的序列
  • 示例:
# 遍历列表或元组
for number in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]:
    print(number**2)
# 遍历字符串
for char in "hello world":
    print(char.upper())
# 遍历字典
d = {'apple': 2, 'banana': 3, 'orange': 4}
for key, value in d.items():
    print(key, value)
# 遍历文件内容
with open('file.txt', 'r') as f: 
    for line in f:
        print(line.strip())
  • while 循环
    基本语法:
while 条件:
    # 循环体
[else]
  # 循环体
  • 示例:
fruits = ['apple', 'banana', 'orange', 'grape']
i = 0
while i < len(fruits):
    print(fruits[i])
    i += 1
  • break 语句可以跳出 for 和 while 的循环体,如果从 for 或 while 循环中终止,任何对应的循环 else 块将不执行。
  • continue 语句被用来告诉 Python 跳过当前循环块中的剩余语句,然后继续进行下一轮循环。
  • pass 语句是空语句,是为了保持程序结构的完整性,pass 不做任何事情,一般用做占位语句


异常的捕获和处理(try-except-finally)

  • try语句和except语句:用于捕获和处理异常
  • try 语句:包含可能会引发异常的代码块。如果在 try 代码块中发生异常,程序将立即跳转到 except 代码块,以执行异常处理操作。
  • except 语句:在 except 语句中,异常对象被赋值给变量 e,可以使用它来获取有关异常的信息。
  • else 语句:可以使用 else 语句来指定当没有异常发生时要执行的代码块
  • finally 语句:指定无论是否发生异常都必须执行的代码块
  • 自定义异常:可以创建自定义异常类,以便根据应用程序需求引发和捕获异常。
  • 代码示例:
# 自定义异常类
class MyCustomError(Exception):
    pass
try:  # 可能会引发异常的代码块
    if some_condition:
        raise MyCustomError("This is a custom error") # 抛出自定义异常
    result = 10 / 0  # 除以零会引发一个异常
except MyCustomError as e:  # 处理自定义异常
    print(f"Custom error occurred: {e}")
except ZeroDivisionError as e:
    print(f"Division by zero error: {e}")
except Exception as e:
    print(f"An error occurred: {e}")
else:  # 当没有异常发生时要执行的代码块
    print(f"Result is {result}")
finally:  # 无论是否发生异常都必须执行的代码块
    print("This code always runs")
相关文章
|
19天前
|
存储 索引 Python
|
30天前
|
Python
【10月更文挑战第7天】「Mac上学Python 14」基础篇8 - 运算符详解
本篇将详细介绍Python中的运算符,包括数学运算、关系运算、逻辑运算、赋值运算和成员运算等内容。同时会说明运算符的优先级和运算顺序,帮助用户理解和掌握Python中的运算符使用规则。
34 3
【10月更文挑战第7天】「Mac上学Python 14」基础篇8 - 运算符详解
|
12天前
|
人工智能 Python
[oeasy]python039_for循环_循环遍历_循环变量
本文回顾了上一次的内容,介绍了小写和大写字母的序号范围,并通过 `range` 函数生成了 `for` 循环。重点讲解了 `range(start, stop)` 的使用方法,解释了为什么不会输出 `stop` 值,并通过示例展示了如何遍历小写和大写字母的序号。最后总结了 `range` 函数的结构和 `for` 循环的使用技巧。
24 4
|
17天前
|
Java 索引 Python
【10月更文挑战第19天】「Mac上学Python 30」基础篇11 - 高级循环技巧与应用
本篇将介绍更深入的循环应用与优化方法,重点放在高级技巧和场景实践。我们将讲解enumerate()与zip()的妙用、迭代器与生成器、并发循环以及性能优化技巧。这些内容将帮助您编写更高效、结构更合理的代码。
54 5
|
20天前
|
Python
Python生成器、装饰器、异常
【10月更文挑战第15天】
|
26天前
|
自然语言处理 Python
【python从入门到精通】-- 第三战:输入输出 运算符
【python从入门到精通】-- 第三战:输入输出 运算符
62 0
【python从入门到精通】-- 第三战:输入输出 运算符
|
1月前
|
Python
Python 循环语句的高级应用与深度探索
本文深入探讨了Python中循环语句的高级应用,包括`for`循环遍历字典获取键值、同步遍历多个序列,以及`while`循环结合条件判断和异常处理。通过嵌套循环实现了矩阵乘法,并介绍了如何优化循环以提升程序性能。示例代码展示了这些技术的实际应用。
44 15
|
30天前
|
数据安全/隐私保护 Python
Python循环语句
【10月更文挑战第7天】
|
1月前
|
设计模式 安全 JavaScript
Python学习八:面向对象编程(下):异常、私有等
这篇文章详细介绍了Python面向对象编程中的私有属性、私有方法、异常处理及动态添加属性和方法等关键概念。
20 1
|
1月前
|
存储 Java 编译器
Python学习三:学习python的 变量命名规则,算数、比较、逻辑、赋值运算符,输入与输出。
这篇文章是关于Python编程语言中变量命名规则、基本数据类型、算数运算符、比较运算符、逻辑运算符、赋值运算符以及格式化输出与输入的详细教程。
18 0
Python学习三:学习python的 变量命名规则,算数、比较、逻辑、赋值运算符,输入与输出。
下一篇
无影云桌面