Python的那些事第三篇:Python编程的“调味料”与“交流术”运算符与输入输出

运算符与输入输出:Python编程的“调味料”与“交流术”

在编程的世界里,Python不仅仅是一门语言,它更像是一位充满智慧的厨师,而运算符和输入输出则是它手中的“调味料”和“交流术”。没有这些工具,代码就会像没有加盐的汤一样,淡而无味,甚至让人摸不着头脑。今天,就让我们用幽默的笔触,深入探索这些看似简单却无比强大的工具,看看它们是如何让Python变得如此美味和生动的!


一、运算符:代码中的“调味大师”

运算符是编程中最基本的工具之一,它们就像是厨房里的刀、叉、勺,虽然简单,但却是完成任何复杂任务的基础。Python中的运算符分为几类,每一种都有其独特的用途和魅力。


(一)算术运算符:数学老师的最爱

算术运算符是编程中最基础的运算工具,它们直接来源于我们熟悉的数学运算。如果你曾经在数学课上打过瞌睡,不用担心,这里我会用最简单的方式帮你复习一遍。

运算符描述示例结果
+加法5 + 38
-减法10 - 46
*乘法7 * 214
/除法9 / 33.0
//整除10 // 33
%取余10 % 31
**乘方2 ** 38
1. 加法(+):数字的“拥抱”

加法是最简单的运算符,它就像是两个数字在拥抱。当你把两个数字放在一起,用加号(+)连接它们时,Python会帮你把它们合并成一个更大的数字。

a = 5
b = 3
result = a + b
print(result)  # 输出:8
2. 减法(-):数字的“分离”

减法则是加法的反面,它更像是数字之间的“分离”。当你从一个数字中减去另一个数字时,Python会帮你计算出它们之间的差距。

a = 10
b = 4
result = a - b
print(result)  # 输出:6
3. 乘法(*):数字的“复制”

乘法就像是数字的“复制”功能。当你把一个数字乘以另一个数字时,Python会帮你把第一个数字复制多次。

a = 7
b = 2
result = a * b
print(result)  # 输出:14
4. 除法(/):数字的“分配”

除法则是乘法的反面,它更像是数字的“分配”。当你把一个数字除以另一个数字时,Python会帮你把第一个数字分成若干份。

a = 9
b = 3
result = a / b
print(result)  # 输出:3.0

注意,除法的结果总是浮点数,哪怕结果是一个整数。如果你希望得到整数结果,就需要用到“整除”运算符。

5. 整除(//):数字的“整数分配”

整除运算符(//)和除法运算符(/)很像,但它会直接丢弃小数部分,只保留整数部分。这在处理需要整数结果的场景时非常有用。

a = 10
b = 3
result = a // b
print(result)  # 输出:3
6. 取余(%):数字的“剩余部分”

取余运算符(%)用来计算两个数字相除后的余数。这在处理循环、分组等问题时非常有用。

a = 10
b = 3
result = a % b
print(result)  # 输出:1
7. 乘方(**):数字的“放大镜”

乘方运算符(**)用来计算一个数字的幂。它就像是一个“放大镜”,可以把数字放大很多倍。

a = 2
b = 3
result = a ** b
print(result)  # 输出:8

(二)比较运算符:谁和谁在“比大小”

比较运算符就像是幼儿园里的小朋友,总是喜欢比谁更高、谁更胖。它们用来比较两个值的大小,并返回一个布尔值(True或False)。这些运算符在条件判断中非常常用。

运算符描述示例结果
==等于5 == 5True
!=不等于5 != 3True
>大于7 > 5True
<小于2 < 4True
>=大于等于5 >= 5True
<=小于等于3 <= 4True
1. 等于(==):判断是否“相等”

等于运算符(==)用来判断两个值是否相等。如果相等,返回True;否则返回False。

a = 5
b = 5
result = a == b
print(result)  # 输出:True
2. 不等于(!=):判断是否“不相等”

不等于运算符(!=)用来判断两个值是否不相等。如果不相等,返回True;否则返回False。

a = 5
b = 3
result = a != b
print(result)  # 输出:True
3. 大于(>)、小于(<)、大于等于(>=)、小于等于(<=)

这些运算符用来比较两个值的大小。它们的逻辑非常直观,就像你在幼儿园里比身高一样。

a = 7
b = 5
result1 = a > b  # 大于
result2 = a < b  # 小于
result3 = a >= b  # 大于等于
result4 = a <= b  # 小于等于
print(result1, result2, result3, result4)  # 输出:True False True False

(三)逻辑运算符:哲学家的思考

逻辑运算符就像是哲学家在思考问题,总是纠结于“是”与“不是”。它们用来处理布尔值(True或False),并根据逻辑规则返回结果。逻辑运算符在复杂的条件判断中非常有用。

运算符描述示例结果
and并且True and FalseFalse
or或者True or FalseTrue
notnot FalseTrue
1. and:只有都为True才返回True

and运算符表示“并且”,只有当两个条件都为True时,结果才为True。否则,结果为False。

condition1 = True
condition2 = False
result = condition1 and condition2
print(result)  # 输出:False
2. or:只要有一个为True就返回True

or运算符表示“或者”,只要有一个条件为True,结果就为True。只有当两个条件都为False时,结果才为False。

condition1 = True
condition2 = False
result = condition1 or condition2
print(result)  # 输出:True
3. not:反转布尔值

not运算符用来反转布尔值。如果原来的值为True,反转后为False;如果原来的值为False,反转后为True。

condition = False
result = not condition
print(result)  # 输出:True

(四)赋值运算符:懒人的“神器”

赋值运算符是用来给变量赋值的工具。除了基本的赋值(=),Python还提供了一些复合赋值运算符,这些运算符可以让代码更加简洁,减少重复的代码。

运算符描述示例等价于
=赋值a = 5a = 5
+=加后赋值a += 3a = a + 3
-=减后赋值a -= 2a = a - 2
*=乘后赋值a *= 4a = a * 4
/=除后赋值a /= 2a = a / 2
1. 基本赋值(=)

基本赋值运算符(=)用来给变量赋值。它把右边的值赋给左边的变量。

a = 10
print(a)  # 输出:10
2. 加后赋值(+=)

加后赋值运算符(+=)用来把变量和一个值相加,然后将结果赋值回变量。

a = 10
a += 5
print(a)  # 输出:15
3. 减后赋值(-=)

减后赋值运算符(-=)用来把变量减去一个值,然后将结果赋值回变量。

a = 10
a -= 5
print(a)  # 输出:5
4. 乘后赋值(*=)

乘后赋值运算符(*=)用来把变量乘以一个值,然后将结果赋值回变量。

Python复制

a = 10
a *= 2
print(a)  # 输出:20
5. 除后赋值(/=)

除后赋值运算符(/=)用来把变量除以一个值,然后将结果赋值回变量。

a = 10
a /= 2
print(a)  # 输出:5.0

二、输入与输出:和用户“唠唠嗑”

输入和输出是程序与用户交互的桥梁。输入允许用户向程序提供信息,而输出则允许程序向用户展示结果。Python提供了几种简单而强大的工具来实现输入和输出。


(一)使用input()函数获取用户输入

input()函数就像是一个热情的客服,总是问你“您需要什么?”它可以让用户输入信息,然后程序再根据这些信息做出反应。不过,input()获取到的内容都是字符串,如果需要数字,还得“变个魔术”(转换类型)。

name = input("请输入你的名字:")
print(f"你好,{name}!欢迎来到编程世界!")

如果用户输入了“小明”,那么输出就是:“你好,小明!欢迎来到编程世界!”

1. 输入数字

如果你需要用户输入一个数字,可以通过int()float()函数将输入的字符串转换为数字。

age = int(input("请输入你的年龄:"))
print(f"你今年{age}岁了。")

如果用户输入了“25”,那么输出就是:“你今年25岁了。”


(二)使用print()函数输出信息

print()函数就像是一个话痨的朋友,总是迫不及待地想把消息告诉你。它可以输出文字、数字,甚至可以输出变量的内容。

print("今天天气真好!")
print(25)
print("我今年", 25, "岁了。")

输出结果是:

今天天气真好!
25
我今年 25 岁了。

(三)格式化输出:让输出“美美哒”

有时候,print()输出的内容太乱了,就像是一堆没整理的杂物。这时候,格式化输出就派上用场了。Python提供了两种常见的格式化方法:f-stringformat()方法

1. f-string:简洁的“时尚达人”

f-string就像是一个时尚达人,只需要在字符串前面加一个f,然后把变量放在大括号里,就能让输出变得优雅又简洁。

name = "小红"
age = 23
print(f"我的名字是{name},今年{age}岁。")

输出结果是:“我的名字是小红,今年23岁。”

2. format()方法:传统的“礼仪先生”

format()方法就像是一个传统的“礼仪先生”,它通过占位符(如{})来安排输出内容,然后用format()方法填充这些占位符。

name = "小蓝"
age = 24
print("我的名字是{},今年{}岁。".format(name, age))

输出结果是:“我的名字是小蓝,今年24岁。”


(四)换行符、制表符和转义字符:让输出“排排坐”

有时候,输出的内容太多,就像是一堆挤在一起的小朋友,看起来很乱。这时候,换行符(\n)、制表符(\t)和转义字符(\就能让它们“排排坐”。

  • 换行符(\n:就像是一声哨响,让文字换到下一行。

  • 制表符(\t:就像是一个“让一让”的手势,让文字缩进一些。

  • 转义字符(\:就像是一个“魔法棒”,能让一些特殊字符(如双引号)在字符串中正常显示。

print("第一行\n第二行")
print("这是\t缩进的内容")
print("他说:\"你好,世界!\"")

输出结果是:

第一行
第二行
这是	缩进的内容
他说:"你好,世界!"

结语

运算符和输入输出就像是Python编程中的“调味料”和“交流术”,它们虽然简单,但却无比强大。通过这些工具,你可以让代码变得更加生动、有趣,甚至能够与用户进行互动。希望这篇文章能帮助你更好地理解和使用这些工具,让你的Python编程之旅更加顺畅。


以下是一个完整的Python代码案例,涵盖了上述提到的运算符和输入输出的知识点。每一行代码都有详细的注释,帮助你理解每一步的作用。

# 算术运算符示例
# 定义两个变量
a = 10
b = 3# 加法
sum_result = a + b  # 10 + 3 = 13
print(f"加法结果:{a} + {b} = {sum_result}")# 减法
difference = a - b  # 10 - 3 = 7
print(f"减法结果:{a} - {b} = {difference}")# 乘法
product = a * b  # 10 * 3 = 30
print(f"乘法结果:{a} * {b} = {product}")# 除法
quotient = a / b  # 10 / 3 = 3.333...
print(f"除法结果:{a} / {b} = {quotient}")# 整除
integer_division = a // b  # 10 // 3 = 3
print(f"整除结果:{a} // {b} = {integer_division}")# 取余
remainder = a % b  # 10 % 3 = 1
print(f"取余结果:{a} % {b} = {remainder}")# 乘方
power = a ** b  # 10 ** 3 = 1000
print(f"乘方结果:{a} ** {b} = {power}")# 比较运算符示例
# 定义两个变量
x = 5
y = 7# 等于
is_equal = x == y  # 5 == 7,结果为 False
print(f"等于比较:{x} == {y} 的结果是 {is_equal}")# 不等于
is_not_equal = x != y  # 5 != 7,结果为 True
print(f"不等于比较:{x} != {y} 的结果是 {is_not_equal}")# 大于
is_greater = x > y  # 5 > 7,结果为 False
print(f"大于比较:{x} > {y} 的结果是 {is_greater}")# 小于
is_less = x < y  # 5 < 7,结果为 True
print(f"小于比较:{x} < {y} 的结果是 {is_less}")# 大于等于
is_greater_or_equal = x >= y  # 5 >= 7,结果为 False
print(f"大于等于比较:{x} >= {y} 的结果是 {is_greater_or_equal}")# 小于等于
is_less_or_equal = x <= y  # 5 <= 7,结果为 True
print(f"小于等于比较:{x} <= {y} 的结果是 {is_less_or_equal}")# 逻辑运算符示例
# 定义两个布尔变量
condition1 = True
condition2 = False# and 运算符
and_result = condition1 and condition2  # True and False,结果为 False
print(f"逻辑与(and):{condition1} and {condition2} 的结果是 {and_result}")# or 运算符
or_result = condition1 or condition2  # True or False,结果为 True
print(f"逻辑或(or):{condition1} or {condition2} 的结果是 {or_result}")# not 运算符
not_result = not condition1  # not True,结果为 False
print(f"逻辑非(not):not {condition1} 的结果是 {not_result}")# 赋值运算符示例
# 基本赋值
c = 10
print(f"基本赋值:c = {c}")# 加后赋值
c += 5  # c = c + 5
print(f"加后赋值:c += 5,结果 c = {c}")# 减后赋值
c -= 3  # c = c - 3
print(f"减后赋值:c -= 3,结果 c = {c}")# 乘后赋值
c *= 2  # c = c * 2
print(f"乘后赋值:c *= 2,结果 c = {c}")# 除后赋值
c /= 4  # c = c / 4
print(f"除后赋值:c /= 4,结果 c = {c}")# 输入与输出示例
# 使用 input() 获取用户输入
user_name = input("请输入你的名字:")  # 获取用户输入的名字
user_age = int(input("请输入你的年龄:"))  # 获取用户输入的年龄,并转换为整数# 使用 print() 输出信息
print(f"你好,{user_name}!你今年{user_age}岁了。")# 格式化输出示例
# 使用 f-string
print(f"使用 f-string 格式化输出:你的名字是 {user_name},年龄是 {user_age}。")# 使用 format() 方法
print("使用 format() 方法格式化输出:你的名字是 {},年龄是 {}。".format(user_name, user_age))# 换行符、制表符和转义字符示例
print("换行符示例:第一行\n第二行")
print("制表符示例:这是\t缩进的内容")
print("转义字符示例:他说:\"你好,世界!\"")

代码说明:

  1. 算术运算符

    • 加法、减法、乘法、除法、整除、取余和乘方的示例。

    • 每个运算符的结果都通过print()函数输出。

  2. 比较运算符

    • 等于、不等于、大于、小于、大于等于和小于等于的示例。

    • 每个比较的结果都通过print()函数输出。

  3. 逻辑运算符

    • andornot的示例。

    • 每个逻辑运算的结果都通过print()函数输出。

  4. 赋值运算符

    • 基本赋值、加后赋值、减后赋值、乘后赋值和除后赋值的示例。

    • 每次赋值后的结果都通过print()函数输出。

  5. 输入与输出

    • 使用input()函数获取用户输入,并通过int()函数将输入的字符串转换为整数。

    • 使用print()函数输出用户输入的信息。

  6. 格式化输出

    • 使用f-stringformat()方法进行格式化输出。

  7. 换行符、制表符和转义字符

    • 使用\n\t\"等特殊字符来控制输出格式。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【miniconda】:langraph的windows构建

langraph需要python3.11 langraph强烈建议使用py3.11 默认是3.12 官方 下载仓库 下载老版本的python (后续发现新版miniconda也能安装老版本的python) 在这里

使用Python和Qt6创建GUI应用程序--关于Qt的一点介绍

关于Qt的一点介绍 Qt是一个免费的开源部件工具包&#xff0c;用于创建跨平台GUI应用程序&#xff0c;允许应用程序从Windows瞄准多个平台&#xff0c;macOS&#xff0c; Linux和Android的单一代码库。但是Qt不仅仅是一个Widget工具箱和功能内置支持多媒体&#xff0c;数据库&am…

Web3.0时代的挑战与机遇:以开源2+1链动模式AI智能名片S2B2C商城小程序为例的深度探讨

摘要&#xff1a;Web3.0作为互联网的下一代形态&#xff0c;承载着去中心化、开放性和安全性的重要愿景。然而&#xff0c;其高门槛、用户体验差等问题阻碍了Web3.0的主流化进程。本文旨在深入探讨Web3.0面临的挑战&#xff0c;并提出利用开源21链动模式、AI智能名片及S2B2C商城…

NoteGen:记录、写作与AI融合的跨端笔记应用

在信息爆炸的时代,如何高效地捕捉灵感、整理知识并进行创作成为了许多人关注的问题。为此,我们开发了 NoteGen,一款专注于记录和写作的跨端 AI 笔记应用。它基于 Tauri 开发,利用其强大的跨平台能力支持 Mac、Windows 和 Linux 系统,并计划未来扩展到 iOS 和 Android 平台…

八股——Java基础(四)

目录 一、泛型 1. Java中的泛型是什么 ? 2. 使用泛型的好处是什么? 3. Java泛型的原理是什么 ? 什么是类型擦除 ? 4.什么是泛型中的限定通配符和非限定通配符 ? 5. List和List 之间有什么区别 ? 6. 可以把List传递给一个接受List参数的方法吗&#xff1f; 7. Arra…

字节iOS面试经验分享:HTTP与网络编程

字节iOS面试经验分享&#xff1a;HTTP与网络编程 &#x1f31f; 嗨&#xff0c;我是LucianaiB&#xff01; &#x1f30d; 总有人间一两风&#xff0c;填我十万八千梦。 &#x1f680; 路漫漫其修远兮&#xff0c;吾将上下而求索。 目录 字节iOS面试经验分享&#xff1a;HTT…

Jenkins上生成的allure report打不开怎么处理

目录 问题背景&#xff1a; 原因&#xff1a; 解决方案&#xff1a; Jenkins上修改配置 通过Groovy脚本在Script Console中设置和修改系统属性 步骤 验证是否清空成功 进一步的定制 也可以使用Nginx去解决 使用逆向代理服务器Nginx&#xff1a; 通过合理调整CSP配置&a…

【16届蓝桥杯寒假刷题营】第2期DAY5

2.最大公因数 - 蓝桥云课 问题描述 给你2个正整数N&#xff0c;M。 你需要构造一个有N个数的正整数序列a&#xff0c;满足以下条件&#xff1a; ∑i1N​ai​M。 求gcd(a)&#xff0c;可能的最大值。 输入描述 输入一行两个正整数N&#xff0c;M&#xff0c;表示数组的长…

【Linux系统】计算机世界的基石:冯诺依曼架构与操作系统设计

文章目录 一.冯诺依曼体系结构1.1 为什么体系结构中要存在内存&#xff1f;1.2 冯诺依曼瓶颈 二.操作系统2.1 设计目的2.2 系统调用与库函数 一.冯诺依曼体系结构 冯诺依曼体系结构&#xff08;Von Neumann Architecture&#xff09;是计算机的基本设计理念之一&#xff0c;由…

顶刊JFR|ROLO-SLAM:首个针对不平坦路面的车载Lidar SLAM系统

摘要 基于激光雷达&#xff08;LiDAR&#xff09;的同步定位与地图构建&#xff08;SLAM&#xff09;被认为是在恶劣环境中提供定位指导的一种有效方法。然而&#xff0c;现成的基于激光雷达的SLAM方法在经过不平坦地形时&#xff0c;尤其是在垂直方向相关的部分&#xff0c;会…

深度学习探索:ChatGPT数据分析精髓 梯度下降优化方法深度剖析

网罗开发 &#xff08;小红书、快手、视频号同名&#xff09; 大家好&#xff0c;我是 展菲&#xff0c;目前在上市企业从事人工智能项目研发管理工作&#xff0c;平时热衷于分享各种编程领域的软硬技能知识以及前沿技术&#xff0c;包括iOS、前端、Harmony OS、Java、Python等…

docker安装elk6.7.1-搜集java日志

docker安装elk6.7.1-搜集java日志 如果对运维课程感兴趣&#xff0c;可以在b站上、A站或csdn上搜索我的账号&#xff1a; 运维实战课程&#xff0c;可以关注我&#xff0c;学习更多免费的运维实战技术视频 0.规划 192.168.171.130 tomcat日志filebeat 192.168.171.131 …

网络工程师 (3)指令系统基础

一、寻址方式 &#xff08;一&#xff09;指令寻址 顺序寻址&#xff1a;通过程序计数器&#xff08;PC&#xff09;加1&#xff0c;自动形成下一条指令的地址。这是计算机中最基本、最常用的寻址方式。 跳跃寻址&#xff1a;通过转移类指令直接或间接给出下一条指令的地址。跳…

思科交换机telnet配置案例

目录 1.telnet简述2.网络拓扑3.设备说明4.网络配置4.1 电脑PC ip设置4.2 网络交换机telnet配置 5.小结 1.telnet简述 Telnet是远程登录服务的一个协议&#xff0c;该协议定义了远程登录用户与服务器交互的方式。它允许用户在一台联网的计算机上登录到一个远程分时系统中&#…

Spring MVC(二)

介绍 Cookie 与 Session Session 类似哈希表&#xff0c;存储了一些键值对结构&#xff0c;Key 就是 SessionID&#xff0c;Vaule 就是用户信息&#xff0c;客户端发起会话的时候&#xff0c;服务器一旦接收&#xff0c;就会创建会话【也就是 Session】&#xff0c;通过 Sessi…

spark运行流程

spark运行流程 任务提交后&#xff0c;先启动 Driver 程序随后 Driver 向集群管理器注册应用程序集群管理器根据此任务的配置文件分配 Executor 并启动Driver 开始执行 main 函数&#xff0c;Spark 查询为懒执行&#xff0c;当执行到 Action 算子时开始反向推 算&#xff0c;根…

【数据资产】数据资产管理概述

导读&#xff1a;数据资产管理在企业的数字化转型和业务发展中扮演着至关重要的角色。它直接关系到企业的决策效率、运营优化、业务创新以及风险防控等多个方面。数据资产作为企业的重要战略资源&#xff0c;能够为企业带来经济利益&#xff0c;其价值可能来自于数据本身的稀缺…

Qt中Widget及其子类的相对位置移动

Qt中Widget及其子类的相对位置移动 最后更新日期&#xff1a;2025.01.25 下面让我们开始今天的主题… 一、开启篇 提出问题&#xff1a;请看上图&#xff0c;我们想要实现的效果是控件黄色的Widge&#xff08;m_infobarWidget&#xff09;t随着可视化窗口&#xff08;m_glWidge…

Mybatis配置文件详解

MyBatis通过XML或注解的方式将Java对象与数据库中的记录进行映射&#xff0c;极大地简化了数据访问层的开发。而在MyBatis的核心组成部分中&#xff0c;配置文件扮演着举足轻重的角色。它不仅定义了MyBatis的运行环境&#xff0c;还配置了数据源、事务管理、映射器等关键元素&a…

怎样在PPT中启用演讲者视图功能?

怎样在PPT中启用演讲者视图功能&#xff1f; 如果你曾经参加过重要的会议或者演讲&#xff0c;你就会知道&#xff0c;演讲者视图&#xff08;Presenter View&#xff09;对PPT展示至关重要。它不仅能帮助演讲者更好地掌控演讲节奏&#xff0c;还能提供额外的提示和支持&#…