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

Python入门06布尔值

目录

  • 1 什么是布尔值
  • 2 怎么生成布尔值
  • 3 在控制程序中使用布尔值
  • 4 数据过滤、排序和其他高级操作
  • 总结

1 什么是布尔值

首先我们要学习一下布尔值的定义,布尔值是一种数据类型,它只有两个可能的值:True(真)或 False(假)。布尔值通常用于表示逻辑操作的结果,例如比较或条件语句。

2 怎么生成布尔值

在Python中,布尔值可以通过比较操作符、逻辑操作符和内置函数生成。以下是一些常见的布尔值生成方法:

  1. 比较操作符:使用比较操作符(如==!=<><=>=)比较两个值时,会返回一个布尔值。

    a = 5
    b = 10
    result = a > b  # result 的值为 False,因为 a 不大于 b
    

在这里插入图片描述

  1. 逻辑操作符:使用逻辑操作符(如andor)组合或取反(not)布尔值。

    a = True
    b = False
    result = a and b  # result 的值为 False,因为b 为假,and的意思是只要有一个为假结果就为假
    

在这里插入图片描述

# 定义两个变量
a = 10
b = 20# 使用逻辑操作符 or 和 not 计算布尔值
result1 = a > 5 or b < 15
result2 = not (a < 10 or b > 25)# 输出结果
print("Result 1:", result1)  # Result 1: True
print("Result 2:", result2)  # Result 2: True

在这里插入图片描述
这里我们要知道and、or的计算规则:

  1. and 运算符:当且仅当两个布尔值都为 True 时,and 运算符的结果为 True;否则,结果为 False
True and True  # True
True and False  # False
False and True  # False
False and False  # False
  1. or 运算符:当至少有一个布尔值为 True 时,or 运算符的结果为 True;否则,结果为 False
True or True  # True
True or False  # True
False or True  # True
False or False  # False

需要注意的是,andor 运算符具有短路特性。这意味着,当运算符左侧的表达式已经足以确定结果时,Python 不会计算右侧的表达式。

  1. 内置函数:使用内置函数(如bool())将其他数据类型转换为布尔值。

    a = 42
    result = bool(a)  # result 的值为 True,因为 a 是非零整数,在布尔上下文中被视为真
    

在这里插入图片描述

3 在控制程序中使用布尔值

布尔值在Python中具有重要意义,因为它们用于控制程序的逻辑流程。例如,可以使用ifwhilefor等控制结构根据布尔值的真假来执行代码块:

# 定义一个列表
numbers = [1, 2, 3, 4, 5]# 使用 for 循环遍历列表
for num in numbers:# 使用 if 判断 num 是否为偶数if num % 2 == 0:print(num, "is even")else:print(num, "is odd")# 使用 while 循环计算 1 到 10 偶数的和
sum = 0
counter = 1while counter <= 10:# 使用 if 判断 counter 是否为偶数if counter % 2 == 0:sum += countercounter += 1print("The sum of numbers from 1 to 10 is", sum)

在这里插入图片描述

4 数据过滤、排序和其他高级操作

布尔值还可以用于数据过滤、排序和其他高级操作。以下为示例:

# 定义一个包含整数的列表
numbers = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]# 使用列表推导式过滤出小于等于 50 的整数
filtered_numbers = [num for num in numbers if num <= 50]
print("Filtered numbers:", filtered_numbers)  # Filtered numbers: [10, 20, 30, 40, 50]# 使用 sorted() 函数对列表进行排序
sorted_numbers = sorted(numbers)
print("Sorted numbers:", sorted_numbers)  # Sorted numbers: [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]# 使用列表推导式从列表中筛选出偶数
even_numbers = [num for num in numbers if num % 2 == 0]
print("Even numbers:", even_numbers)  # Even numbers: [20, 40, 60, 80, 100]# 使用 filter() 函数和 lambda 表达式过滤出大于 50 的整数
filtered_numbers_2 = list(filter(lambda num: num > 50, numbers))
print("Filtered numbers using filter():", filtered_numbers_2)  # Filtered numbers using filter(): [60, 70, 80, 90, 100]

在这里插入图片描述

总结

我们本篇介绍了Python中boolean的定义及用法,在我们日常编写业务逻辑的时候会大量应用到布尔值做逻辑的判断,需要梳理掌握。

http://www.lryc.cn/news/249079.html

相关文章:

  • js查询详情接口控制执行时间的命令
  • Linux系统iptables
  • 每日一题 1410. HTML 实体解析器(中等,模拟)
  • Docker Swarm总结+service创建和部署、overlay网络以及Raft算法(2/5)
  • 对抗产品团队中的认知偏误:给产品经理的专家建议
  • element-ui表格无法横向拖动问题
  • 每天学习一点点之 MySQL TINYINT
  • 【数据集】未来不同情景下预测数据:如人口、土地利用等
  • TDA4VM EVM开发板调试笔记
  • 项目里边更换了同名的图片地址 / 图片没有及时更新 / 什么原因
  • RandomAccessFile学习笔记
  • 主流数据库类型总结
  • 程序员养生之道
  • CNN对 MNIST 数据库中的图像进行分类
  • HarmonyOS开发工具简介
  • 大量索引场景下 Easysearch 和 Elasticsearch 的吞吐量差异
  • 东明石化集团领导团队参访震坤行工业超市
  • Java常见的面试题(很基础那种)
  • MySQL处理并发访问和高负载的关键技术和策略
  • 软件测试jmeter基本使用
  • 一文讲透Python函数中的局部变量和全局变量
  • 【LeetCode】每日一题 2023_11_23 HTML 实体解析器(调库/打工)
  • Flask SocketIO 实现动态绘图
  • 软著项目推荐 深度学习 植物识别算法系统
  • 自动驾驶HWP 功能规范
  • Ubuntu 环境下 NFS 服务安装及配置使用
  • vue.js如何根据后台返回来的图片url进行图片下载
  • 获取WordPress分类链接
  • <Linux>(极简关键、省时省力)《Linux操作系统原理分析之Linux 进程管理 5》(9)
  • Anthropic推出Claude 2.1聊天机器人;使用AI工具写作:挑战与策略