当前位置: 首页 > news >正文

1.1.2 运算符与表达式——AI教你学Django

1.1.2 运算符与表达式(Django 基础学习细节)

Python 的运算符和表达式是编程的基础,也是后续 Django 业务逻辑、模型处理等的常用工具。下面详细讲解各类运算符、常见表达式及优先级。

一、算术运算符

用于数值计算,适用于 int、float 类型:

运算符作用示例结果
+加法3 + 25
-减法3 - 21
*乘法3 * 26
/除法3 / 21.5
//整除3 // 21
%取余3 % 21
**幂运算3 ** 29

示例:

a, b = 10, 3
print(a + b)   # 13
print(a - b)   # 7
print(a * b)   # 30
print(a / b)   # 3.333...
print(a // b)  # 3
print(a % b)   # 1
print(a ** b)  # 1000

二、关系运算符

用于比较两个值,返回布尔值(True/False):

运算符作用示例结果
>大于3 > 2True
<小于3 < 2False
>=大于等于3 >= 3True
<=小于等于2 <= 3True
==等于3 == 2False
!=不等于3 != 2True

示例:

score = 85
print(score >= 60)  # True
print(score == 100) # False

三、逻辑运算符

用于连接或反转布尔值:

运算符作用示例结果
andTrue and FalseFalse
orTrue or FalseTrue
notnot TrueFalse

示例:

a, b = True, False
print(a and b)  # False
print(a or b)   # True
print(not a)    # Falseage = 18
is_student = True
print(age >= 18 and is_student)  # True

四、位运算符

用于二进制操作,常用于底层编程:

运算符作用示例结果
&按位与5 & 31
``按位或`5
^按位异或5 ^ 36
~按位取反~5-6
<<左移5 << 110
>>右移5 >> 12

示例:

x, y = 5, 3
print(x & y)   # 1   二进制: 101 & 011 = 001
print(x | y)   # 7   二进制: 101 | 011 = 111
print(x ^ y)   # 6   二进制: 101 ^ 011 = 110
print(~x)      # -6  取反
print(x << 1)  # 10  左移一位
print(x >> 1)  # 2   右移一位

五、成员运算符

用于判断某元素是否在序列(字符串、列表、元组、字典、集合)中:

运算符作用示例结果
in在…中'a' in 'abc'True
not in不在…中1 not in [2,3]True

示例:

lst = [1, 2, 3]
print(2 in lst)      # True
print(4 not in lst)  # Truetext = "Django"
print("j" in text)   # True

六、身份运算符

用于判断两个变量是否引用同一对象:

运算符作用示例结果
is是同一对象a is bTrue/False
is not不是同一对象a is not bTrue/False

示例:

a = [1,2]
b = a
c = [1,2]
print(a is b)      # True
print(a is c)      # False
print(a == c)      # True(值相等,但不是同一对象)

七、表达式优先级

Python 表达式有严格的优先级,影响计算顺序:

  1. 括号 () 最优先
  2. 幂运算 **
  3. 正负号 +x, -x
  4. 乘除、整除、取余 *, /, //, %
  5. 加减 +, -
  6. 位运算符 <<, >>, &, |, ^
  7. 关系运算符 >, <, >=, <=, ==, !=
  8. 成员、身份运算符 in, not in, is, is not
  9. 逻辑运算符 not, and, or

示例:

result = 2 + 3 * 4    # 2 + (3 * 4) = 14
result = (2 + 3) * 4  # (2 + 3) * 4 = 20
result = 2 ** 3 ** 2  # 2 ** (3 ** 2) = 2 ** 9 = 512
result = not 3 > 5 or 2 < 4  # not False or True = True

可用括号强制优先级,建议在复杂表达式中多用括号提升可读性。

八、实用小结

  • 掌握各类运算符,为后续条件判断、循环、数据处理和 Django 业务逻辑打下坚实基础。
  • 理解优先级,避免因顺序错误导致结果异常。
  • 多用括号确保表达式计算顺序正确、代码可读性高。
http://www.lryc.cn/news/585031.html

相关文章:

  • [WinForms] 如何为 .NET Framework 4.8 窗体程序添加自定义图标
  • 多租户架构下的多线程处理实践指南
  • 【网络】Linux 内核优化实战 - net.netfilter.nf_conntrack_max
  • 【网络】Linux 内核优化实战 - net.netfilter.nf_conntrack_buckets
  • 番外-linux系统运行.net framework 4.0的项目
  • 如何在报表开发工具FastReport .NET 中构建和连接 Firebird 插件?
  • 基于ASP.NET MVC+SQLite开发的一套(Web)图书管理系统
  • 游戏开发日记
  • 微软语音合成标记语言SSML文档结构和事件(详细文档和实例)
  • Unity Demo——3D平台跳跃游戏笔记
  • WHQL认证失败怎么办?企业如何高效申请
  • LeetCode 148 排序链表解析:高效归并排序实现
  • 基于Springboot+UniApp+Ai实现模拟面试小工具二:后端项目搭建
  • 【数据结构与算法】203.移除链表元素(LeetCode)图文详解
  • doker和网站部署
  • LeetCode--43.字符串相乘
  • Kotlin 常用语法糖完整整理
  • 九联UNT403AS_S905L3SB当贝固件优盘刷机包下载
  • 9、鸿蒙Harmony Next开发:栅格布局 (GridRow/GridCol)
  • AI产品经理面试宝典第7天:核心算法面试题-上
  • 在 Spring Boot 中使用 WebMvcConfigurer
  • AI技术正以前所未有的速度重塑职业生态与行业格局,尤其在自动化测试领域,AI驱动的测试框架通过智能化、低代码化重构传统测试流程。
  • python solr数据导出脚本
  • 分割网络Segformer
  • 界面组件DevExpress WPF中文教程:Grid - 如何检查节点?
  • mongodb 开源同步工具介绍
  • Windows 应用程序的 UI 框架:WPF、WinUI 3 和 UWP的差异区别
  • Django--02模型和管理站点
  • 【三】ObservableCollection 与 List 的区别
  • 【EGSR2025】材质+扩散模型+神经网络相关论文整理随笔(四)