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

news2025/1/30 16:36:20

运算符与输入输出: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.coloradmin.cn/o/2284445.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

深度剖析C++17中的std::optional:处理可能缺失值的利器

文章目录 一、基本概念与设计理念二、构建与初始化&#xff08;一&#xff09;默认构造&#xff08;二&#xff09;值初始化&#xff08;三&#xff09;使用std::make_optional&#xff08;四&#xff09;使用std::nullopt 三、访问值&#xff08;一&#xff09;value()&#x…

MySQL用户授权、收回权限与查看权限

【图书推荐】《MySQL 9从入门到性能优化&#xff08;视频教学版&#xff09;》-CSDN博客 《MySQL 9从入门到性能优化&#xff08;视频教学版&#xff09;&#xff08;数据库技术丛书&#xff09;》(王英英)【摘要 书评 试读】- 京东图书 (jd.com) MySQL9数据库技术_夏天又到了…

【Maui】注销用户,采用“手势”点击label弹窗选择

文章目录 前言一、问题描述二、解决方案三、软件开发&#xff08;源码&#xff09;3.1 方法一&#xff1a;前端绑定3.2 方法二&#xff1a;后端绑定3.3 注销用户的方法 四、项目展示 前言 .NET 多平台应用 UI (.NET MAUI) 是一个跨平台框架&#xff0c;用于使用 C# 和 XAML 创…

如何将xps文件转换为txt文件?xps转为pdf,pdf转为txt,提取pdf表格并转为txt

文章目录 xps转txt方法一方法二 pdf转txt整页转txt提取pdf表格&#xff0c;并转为txt 总结另外参考XPS文件转换为TXT文件XPS文件转换为PDF文件PDF文件转换为TXT文件提取PDF表格并转为TXT示例代码&#xff08;部分&#xff09; 本文测试代码已上传&#xff0c;路径如下&#xff…

Object类(2)

大家好&#xff0c;今天我们继续来看看Object类中一些成员方法&#xff0c;这些方法在实际中有很大的用处&#xff0c;话不多说&#xff0c;来看。 注&#xff1a;所有类都默认继承Object类的&#xff0c;所以可调用Object类中的方法&#xff0c;如equals&#xff0c;也可以发生…

BGP分解实验·11——路由聚合与条件性通告(3)

续接上&#xff08;2&#xff09;的实验。其拓扑如下&#xff1a; 路由聚合的负向也就是拆分&#xff0c;在有双出口的情况下&#xff0c;在多出口做流量分担是优选方法之一。 BGP可以根据指定来源而聚合路由&#xff0c;在产生该聚合路由的范围内的条目注入到本地BGP表后再向…

MOS的体二极管能通多大电流

第一个问题&#xff1a;MOS导通之后电流方向可以使任意的&#xff0c;既可以从D到S&#xff0c;也可以从S到D。 第二个问题&#xff1a;MOS里面的体二极管电流可以达到几百安培&#xff0c;这也就解释了MOS选型的时候很少考虑体二极管的最大电流&#xff0c;而是考虑DS之间电流…

C语言【基础篇】之流程控制——掌握三大结构的奥秘

流程控制 &#x1f680;前言&#x1f99c;顺序结构&#x1f4af; 定义&#x1f4af;执行规则 &#x1f31f;选择结构&#x1f4af;if语句&#x1f4af;switch语句&#x1f4af;case穿透规则 &#x1f914;循环结构&#x1f4af;for循环&#x1f4af;while循环&#x1f4af;do -…

Node.js下载安装及环境配置教程 (详细版)

Node.js&#xff1a;是一个基于 Chrome V8 引擎的 JavaScript 运行时&#xff0c;用于构建可扩展的网络应用程序。Node.js 使用事件驱动、非阻塞 I/O 模型&#xff0c;使其非常适合构建实时应用程序。 Node.js 提供了一种轻量、高效、可扩展的方式来构建网络应用程序&#xff0…

新型人工智能“黑帽”工具:GhostGPT带来的威胁与挑战

生成式人工智能的发展既带来了有益的生产力转型机会&#xff0c;也提供了被恶意利用的机会。 最近&#xff0c;Abnormal Security的研究人员发现了一个专门为网络犯罪创建的无审查AI聊天机器人——GhostGPT&#xff0c;是人工智能用于非法活动的新前沿&#xff0c;可以被用于网…

【文星索引】搜索引擎项目测试报告

目录 一、项目背景二、 项目功能2.1 数据收集与索引2.2 API搜索功能2.3 用户体验与界面设计2.4 性能优化与维护 三、测试报告3.1 功能测试3.2 界面测试3.3 性能测试3.4 兼容性测试3.5 自动化测试 四、测试总结4.1 功能测试方面4.2 性能测试方面4.3 用户界面测试方面 一、项目背…

【PostgreSQL内核学习 —— (WindowAgg(一))】

WindowAgg 窗口函数介绍WindowAgg理论层面源码层面WindowObjectData 结构体WindowStatePerFuncData 结构体WindowStatePerAggData 结构体eval_windowaggregates 函数update_frameheadpos 函数 声明&#xff1a;本文的部分内容参考了他人的文章。在编写过程中&#xff0c;我们尊…

【观察】甲骨文:以AI为中心,开启企业级平台架构“新革命”

知名科技杂志《连线》创始主编凯文凯利曾预测&#xff1a;“在未来的 100 年里&#xff0c;人工智能将超越任何一种人工力量&#xff0c;将人类引领到一个前所未有的时代。” 可以看到&#xff0c;随着近两年AIGC与大模型的快速爆发&#xff0c;AI在千万行业中的重要性愈发突出…

react native在windows环境搭建并使用脚手架新建工程

截止到2024-1-11&#xff0c;使用的主要软件的版本如下&#xff1a; 软件实体版本react-native0.77.0react18.3.1react-native-community/cli15.0.1Android Studio2022.3.1 Patch3Android SDKAndroid SDK Platform 34 35Android SDKAndroid SDK Tools 34 35Android SDKIntel x…

C语言从入门到进阶

视频&#xff1a;https://www.bilibili.com/video/BV1Vm4y1r7jY?spm_id_from333.788.player.switch&vd_sourcec988f28ad9af37435316731758625407&p23 //枚举常量 enum Sex{MALE,FEMALE,SECRET };printf("%d\n", MALE);//0 printf("%d\n", FEMALE…

Python案例--养兔子

兔子繁殖问题是一个经典的数学问题&#xff0c;最早由意大利数学家斐波那契在13世纪提出。这个问题不仅在数学领域具有重要意义&#xff0c;还广泛应用于计算机科学、生物学和经济学等领域。本文将通过一个具体的Python程序&#xff0c;深入探讨兔子繁殖问题的建模和实现&#…

若依基本使用及改造记录

若依框架想必大家都了解得不少&#xff0c;不可否认这是一款及其简便易用的框架。 在某种情况下&#xff08;比如私活&#xff09;使用起来可谓是快得一匹。 在这里小兵结合自身实际使用情况&#xff0c;记录一下我对若依框架的使用和改造情况。 一、源码下载 前往码云进行…

Java基础教程(007):方法的重载与方法的练习

文章目录 6.5 方法的重载6.6 方法练习数组遍历数组最大值 6.5 方法的重载 在 Java 中&#xff0c;方法的重载是指在同一个类中定义多个方法&#xff0c;这些方法具有相同的名称&#xff0c;但参数列表不同。方法的重载是一种实现多态的方式&#xff0c;允许一个方法名以不同的…

Day27-【13003】短文,线性表两种基本实现方式空间效率、时间效率比较?兼顾优点的静态链表是什么?如何融入空闲单元链表来解决问题?

文章目录 本次内容总览第四节&#xff0c;两种基本实现方式概览两种基本实现方式的比较元素个数n大于多少时&#xff0c;使用顺序表存储的空间效率才会更高&#xff1f;时间效率比较&#xff1f;*、访问操作&#xff0c;也就是读运算&#xff0c;读操作1、插入&#xff0c;2、删…

Linux 小火车

1.添加epel软件源 2.安装sl 3. 安装完成后输入&#xff1a; sl