【Python数据结构与判断2/7】数据和判断小结

目录

序言

print()

变量

赋值

四种数据类型

字符串

格式化输出

四则运算

取整与取模

比较运算

逻辑运算

判断

if语句

if-else语句

if-elif-else语句

Tips

空值、0、非0非空值

实战案例

输入密码

短信模板

总结


序言

        今天将对前面学过的内容进行一个复习小结。

print()

        最开始学习了使用print()这个功能在屏幕上输出一段内容。print()的括号里,是要输出的内容。这个内容可以是常量,也可以是变量,甚至是运算的结果。

         请注意,print需小写。

# 输出常量
print("栗子编程 -- Chestnut programming")
print(2024)
# 输出变量
name = "小栗子"
print(name)
# 输出运算结果
age = 18
print(10 + age)

变量

        变量就像容器,能够存储各种类型的数据。
变量名只能由大小写字母,数字和下划线组成。需要注意:
1.不能以数字开头
2.不能包含空格
3.大小写敏感,变量A和变量a是不同的

赋值

        将数据放入变量的过程,叫作赋值,赋值运算符是 =。可以把常量赋值给变量,也可以把变量赋值给变量,还可以把运算结果赋值给变量。

四种数据类型

        前面共学习了四种数据类型:整型,浮点型,布尔数,字符串。这四种数据类型分别对应不同的应用场景。整型和浮点型用于数字的表示和计算;布尔数用于逻辑判断和运算;字符串用来进行文本处理。

字符串

        字符串常量可以使用双引号 " ",单引号 ' ' 来表示。
        双引号和单引号的功能相同,唯一的区别是,当字符串的内容已包含单引号时,我们可以使用双引号将内容括起来,反之同理。
        print()函数中,字符串不能直接使用回车进行换行,否则系统会报错。如需要换行,需要在换行处使用转义字符中的 \n。

格式化输出

        除了可以直接使用print()输出,还可以通过格式化输出的方式来对字符串进行“填空”。
格式化输出的语法如图:
1.在字符串常量前添加小写字母f
2.字符串中需要“填空”的地方使用大括号 { } 括起来
3.将需要填空的变量填入大括号 { } 中

四则运算

        整型和浮点型分别用来表示整数和小数。他们之间可以进行四则运算,分别是:加+、减-、乘*、除/

取整与取模

        除了四则运算以外,整型和浮点型还可以进行取模 % 和取整 // 运算。取模 % 表示运算结果为两数相除结果的余数。取整 // 表示运算结果为两数相除结果的商。

比较运算

        整型和浮点型的比较,需要使用比较运算符。
比较运算符有:
大于>
小于<
等于==
大于等于>=
小于等于<=
不等于!=
注意:等于运算符是 ==, 赋值运算符是 = 。

逻辑运算

        布尔数间可以进行逻辑运算。逻辑运算符一共有三个,分别是:
and(并且)——两边的布尔数均为真时才为真,其他情况为假。
or(或者)——两边的布尔数至少有一个为真时为真,两边的布尔数都是假时才为假。
not(非)——仅有一个布尔数参与运算,结果为对这个布尔数取反。

判断

        使用if判断,就能根据布尔表达式的结果(真或假),来决定后续代码执行顺序。

if语句

        单独的if语句,是一个独立的单向判断:如果条件为真,则进入执行部分。如果条件为假,则跳过。

if-else语句

        if-else语句,是一个双向判断的语句。如果if判断条件为真时,则进入if的执行部分。如果为假时,则进入else的执行部分。if和else的执行部分,是互斥的,只会执行其中一个。

if-elif-else语句

        if-elif-else语句,是一个多向判断的语句。
        按照代码顺序,将if和elif的判断语句一个个进行判断,如果判断为真,则进入执行语句,如果判断都为假,则进入else的执行语句。
        if、elif、else的执行部分,都是互斥的,只会执行其中一个。

Tips

        if语句是单向判断,多个if语句,只要判断为True的,每个都会执行。

        if-else语句,if-elif-else语句,都是互斥的语句。程序只会执行其中的一个。

        在互斥的情况下,使用if-elif-else语句,和多个if语句,输出的结果可以是一致的。如图,在判断条件满足逻辑要求时,输出的结果是一致的。

空值、0、非0非空值

        除却布尔表达式可以作为判断条件外,空值、0、非零非空值,均可以作为判断条件。
        空值,写作None,表示没有值。和0不一样,0是有值,只是值为0。而空值是没有值,用None来表示。
        如图可以看到,None和0,是不一样的。

在判断语句中:
对 非零非空值 的判断为真(True);
对 0 的判断为假(False);
对 空值None 的判断为假(False)。

实战案例

输入密码

判断密码是否输入的代码机制,可以用空值实现:
1. 对变量password赋值None
2. if password,用print()输出"输入成功",否则,用print()输出"未输入密码"
3. 对变量password重新赋值"123456"
4. if password,用print()输出"输入成功",否则,用print()输出"未输入密码"

参考代码

password = None
if password:
    print("输入成功")
else:
    print("未输入密码")
password = 123456
if password:
    print("输入成功")
else:
    print("为输入密码")

运行结果

短信模板

充值话费的短信,就是一个使用格式化输出的例子。
用变量time代表时间,money代表充值金额,balance代表余额,赋值均使用字符串格式。 使用格式化输出(注意此处【缴费提醒】使用中文的中括号),print()输出下图的两条短信内容:

参考代码

time = "2021年02月02日14时20分"
money = "50.00"
balance = "42.94"

print(f"【缴费提醒】尊敬的客户,您好!您于{time},为本机充值{money}元,当前余额为{balance}元。")

time = "2021年02月18日09时30分"
money = "100.00"
balance = "142.94"

print(f"【缴费提醒】尊敬的客户,您好!您于{time},为本机充值{money}元,当前余额为{balance}元。")

运行结果

总结

        截止目前,学习了前8篇的你可能会有疑问,有些操作非常简单,一眼就能看出来,为什么要用Python实现呢?
        这是因为,目前学习的数据类型,和逻辑判断,是Python编程的基石。打好语法基础,后续,我们将进入其他章节,学习Python更复杂的逻辑。
        一起加油吧~

        我们来总结一下之前的知识点:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/447203.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

如何从碎屏的华为手机恢复数据?6 种热门方法

“只是想知道是否可以从屏幕损坏的华为恢复数据&#xff1f;我尝试将其插入我的笔记本电脑&#xff0c;但手机不允许我进入&#xff0c;因为它要求我更改手机中的设置等.我最好的选择是什么&#xff1f; 当发生事故&#xff0c;我们的华为手机屏幕损坏时&#xff0c;访问这些关…

【数据分享】2000-2022年全国1km分辨率的逐月PM10栅格数据(免费获取)

空气质量数据是在我们日常研究中经常使用的数据&#xff01;之前我们给大家分享了2000-2022年全国范围逐月的PM2.5栅格数据、2013-2022年全国范围逐月SO2栅格数据和2013-2022年全国范围逐月CO栅格数据&#xff08;可以查看之前的文章获悉详情&#xff09;&#xff01; 本次我们…

云原生(一)、linux快速上手

Linux是一种开源的Unix-like操作系统内核。它是由Linus Torvalds于1991年首次发布&#xff0c;其后经过全球的自由软件社区的持续开发和改进。Linux内核是操作系统的核心部分&#xff0c;但通常与GNU项目合作&#xff0c;以形成完整的操作系统&#xff0c;被称为Linux发行版&am…

力扣hot100:152.乘积最大子数组(动态规划)

一个子数组问题&#xff0c;我们要使用线性dp&#xff0c;最好先考虑以i结尾&#xff0c;如果定义dp[i]为前i个数最大子数组乘积值 那么dp[i-1]就无法转移到dp[i]。因此我们先考虑dp[i]定义为以第i个数结尾的最大子数组乘积值。 53. 最大子数组和 最大子数组和是一个动态规划问…

b树(一篇文章带你 理解 )

目录 一、引言 二、B树的基本定义 三、B树的性质与操作 1 查找操作 2 插入操作 3 删除操作 四、B树的应用场景 1 数据库索引 2 文件系统 3 网络路由表 五、哪些数据库系统不使用B树进行索引 1 列式数据库 2 图形数据库 3 内存数据库 4 NoSQL数据库 5 分布式数据…

小巧设备,大能量:探索口袋中的远程控制神器

在这个科技日新月异的时代&#xff0c;我们的生活被各种手机软件所包围。几乎每个人都有一个甚至多个手机&#xff0c;你是否也有遇到过需要远程操作自己某一台手机的场景呢&#xff1f;今天&#xff0c;我要向大家推荐一款神奇的手机远程操作神器&#xff0c;让你可以随时随地…

Cocos2dx-lua ScrollView[二]进阶篇

一.概述 本文缩写说明:sv = ScrollView, item代表ScrollView的一个子节点 如果对sv熟系程度还不够,请阅读基础篇: Cocos2dx-lua ScrollView[一]基础篇-CSDN博客 本文介绍sv的一种封装类库,来实现快速创建sv,有如下几个优点: 1.item的位置通过参数控制,提高开发效率…

virtualbox下centos安装增强工具没反应

virtualbox下centos安装增强工具没反应 标签:linux 可能原因猜想 virtualbox下最小化安装CentOS&#xff0c;由于最小化安装时&#xff0c;没有选择Development Tools组&#xff0c;导致没有kernel-devel&#xff0c;而后安装的kernel-devel与kernel版本不一致&#xff0c;导…

【linux进程信号】信号的产生

【Linux进程信号】信号的产生 目录 【Linux进程信号】信号的产生信号概念生活中的信号技术应用角度的信号注意信号概念用kill -l命令可以察看系统定义的信号列表信号处理常见方式概览 产生信号通过终端按键产生信号调用系统函数向进程发信号由软件条件产生信号由硬件异常产生信…

基于java(springboot+mybatis)汽车信息管理系统设计和实现以及文档

基于java(springbootmybatis)汽车信息管理系统设计和实现以及文档 博主介绍&#xff1a;多年java开发经验&#xff0c;专注Java开发、定制、远程、文档编写指导等,csdn特邀作者、专注于Java技术领域 作者主页 央顺技术团队 Java毕设项目精品实战案例《1000套》 欢迎点赞 收藏 ⭐…

【Spring云原生系列】SpringBoot+Spring Cloud Stream:消息驱动架构(MDA)解析,实现异步处理与解耦合

&#x1f389;&#x1f389;欢迎光临&#xff0c;终于等到你啦&#x1f389;&#x1f389; &#x1f3c5;我是苏泽&#xff0c;一位对技术充满热情的探索者和分享者。&#x1f680;&#x1f680; &#x1f31f;持续更新的专栏《Spring 狂野之旅&#xff1a;从入门到入魔》 &a…

Vue ECharts line3D点击空白处重置图表视角- 附完整示例

ECharts&#xff1a;一个基于 JavaScript 的开源可视化图表库。 目录 效果 一、介绍 1、官方文档&#xff1a;Apache ECharts 2、官方示例 二、准备工作 1、安装依赖包 2、示例版本 三、使用步骤 1、在单页面引入 echarts 2、指定容器并设置容器宽高 3、数据处理&…

mysql 优化——磁盘空间优化

前言 有的时候&#xff0c;表的数据太多&#xff0c;为了提高查询以及存储&#xff0c;就把历史数据放到一个历史表里&#xff0c;在把历史数据删除&#xff0c;发现虽然历史数据删除&#xff0c;表的大小并没有发生改变。 Innodb 表有两部分&#xff0c;即&#xff1a;表结构…

【Emgu CV教程】9.1、形态学常用操作之腐蚀

文章目录 一、相关概念1.什么叫形态学2.形态学操作的目的3.形态学都包含哪些操作4.结构元素StructuringElement 二、腐蚀1.什么叫腐蚀2.腐蚀的作用3.腐蚀的函数 三、演示1.原始素材2.代码3.运行结果 一、相关概念 1.什么叫形态学 形态学&#xff0c;英文名称morphology&#…

【C++】了解一下STL

个人主页 &#xff1a; zxctscl 如有转载请先通知 STL 1. 什么是STL2. STL的版本3. STL的六大组件4. STL的重要性5. 如何学习STL6. STL的缺陷 1. 什么是STL STL(standard template libaray-标准模板库)&#xff1a;是C标准库的重要组成部分&#xff0c;不仅是一个可复用的组件…

C语言:基于单链表实现的泊车管理系统

一、需求 &#xff08;1&#xff09;管理员方账号登录&#xff1b; &#xff08;2&#xff09;车位管理显示&#xff1a;车位状态&#xff1b; &#xff08;3&#xff09;收费管理&#xff1a;小轿车 5元/小时&#xff0c;面包车6元/小时&#xff0c;大货车或客车7元/小时&a…

vulhub中Weblogic 管理控制台未授权远程命令执行漏洞复现(CVE-2020-14882,CVE-2020-14883)

Weblogic是Oracle公司推出的J2EE应用服务器。在2020年10月的更新中&#xff0c;Oracle官方修复了两个长亭科技安全研究员voidfyoo 提交的安全漏洞&#xff0c;分别是CVE-2020-14882和CVE-2020-14883。 CVE-2020-14882允许未授权的用户绕过管理控制台的权限验证访问后台&#x…

【Flutter 面试题】dart是值传递还是引用传递?

【Flutter 面试题】dart是值传递还是引用传递&#xff1f; 文章目录 写在前面解答补充说明值传递示例引用传递示例总结 写在前面 关于我 &#xff0c;小雨青年 &#x1f449; CSDN博客专家&#xff0c;GitChat专栏作者&#xff0c;阿里云社区专家博主&#xff0c;51CTO专家博主…

vs2022的下载及安装教程(Visual Studio 2022)

vs简介 Visual Studio在团队项目开发中使用非常多且功能强大&#xff0c;支持开发人员编写跨平台的应用程序;Microsoft Visual C 2022正式版(VC2022运行库)&#xff0c;具有程序框架自动生成&#xff0c;灵活方便的类管理&#xff0c;强大的代码编写等功能&#xff0c;可提供编…

信息系统项目管理师008:两化融合与智能制造(1信息化发展—1.3现代化创新发展—1.3.2两化融合与智能制造)

文章目录 1.3.2 两化融合与智能制造1.两化融合2.智能制造 记忆要点总结 1.3.2 两化融合与智能制造 “坚持自主可控、安全高效&#xff0c;推进产业基础高级化、产业链现代化&#xff0c;保持制造业比重基本稳定&#xff0c;增强制造业竞争优势&#xff0c;推动制造业高质量发展…