Python编程学习之如何判断3个数的大小

作者:RussellYoung 时间:2022-03-06 18:10:04 

前言

大部分初学编程的人来说刚开始都会练习判断两个数或者三个数的大小,来熟悉某种语言的特性和最基本的if,else循环,当我们学习了更高级的语法知识后,又会有不同的实现方式,比如这道练习题依次接收用户输入的3个数,排序后打印现在我们来看一下在Python中都有哪些方法来实现:

1, 采用分支结构,用最基本的if和else来实现:


a = int(input('a>>>'))
b = int(input('b>>>'))
c = int(input('c>>>'))
if a>b:
if b>c:
print('a>b>c')
else:
if a>c:
 print('a>c>b')
else:
 print('c>a>b')
elif a<b:
if b<c:
print('c>b>a')
else:
if c>a:
 print('b>c>a')
else:
 print('b>a>c')

这可能是大部分初学编程er的第一想法,但较为繁琐,由于我最近刚学到列表list,那么如果用list来实现的话方法有哪些呢

2,引入列表


nums = []
for i in range(3):
nums.append(int(input('{}; '.format(i))))
if nums[0]>nums[1]:
if nums[0]>nums[2]:
 i3 = nums[0]
 if nums[1] > nums[2]:
 i2 = nums[1]
 i1 = nums[0]
 else:
 i2 = nums[0]
 i1 = nums[1]
else:#0<2 1<0
 i3 = nums[2]
 i2 = nums[0]
 i1 = nums[1]
else: #[0]<[1]
if nums[0] < nums[2]:
i1 = nums[0]
if nums[1] < nums[2]:
 i2 = nums[1]
 i3 = nums[2]
else:#[1]>[2]
 if nums[0] > nums[2]:
 i2 = nums[0]
 i3 = mums[2]
 else:
 i2 = nums[2]
 i3 = mums[0]
print(i1,i2,i3)

虽然我们在这里用了list,但是逻辑上还是第一种逐个比较后再打印的思想,所以可以看到,并没有变简洁。

3,使用Max函数


nums = []
for i in range(3):
nums.append(int(input('{}: '.format(i))))
#此处不能使用for循环,不能一边迭代该列表,同时删除或者增加该列表
while True:
x = max(nums)
print(x)
nums.remove(x)
if len(nums) == 1:
print(nums[0])
break

这种方法的思路是找出最大值,打印再剔除,直到最后打印出最小值。这样的话我们就能以较少的代码来实现这一任务了。max函数和min函数是Python的内置函数,在求最大值和最小值上更快速便捷。但当我们需要比较并打印出很多的数字时,这种方法就没那么高效了。

4,用列表的sort操作来实现大小比较并打印输出

sort(key=None, reverse=False) -> None

对列表元素进行排序,就地修改,默认升序


nums = []
out = None
for i in range(3):
nums.append(int(input('{}: '.format(i))))
nums.sort()
print(nums)

这一次可以看到,代码简洁了很多,而且即便我们需要增加输入量,比较多个数据也只需要做很少的改动即可。

来源:https://www.jianshu.com/p/787db8890a8c

标签:python,判断,大小
0
投稿

猜你喜欢

  • keras K.function获取某层的输出操作

    2023-03-11 15:10:21
  • 再读《你是一个职业的页面重构工作者吗?》

    2009-02-11 12:22:00
  • 关于python写入文件自动换行的问题

    2021-09-01 00:03:13
  • 一文搞懂Python中列表List和元组Tuple的使用

    2022-10-09 02:24:58
  • python3使用urllib示例取googletranslate(谷歌翻译)

    2021-08-31 19:20:34
  • Python实现求一个集合所有子集的示例

    2022-09-01 20:56:51
  • 对Tensorflow中权值和feature map的可视化详解

    2021-03-31 22:24:39
  • Opencv+Python实现图像运动模糊和高斯模糊的示例

    2022-08-06 12:25:19
  • php for 循环语句使用方法详细说明

    2023-11-17 21:43:21
  • 让ThinkPHP支持大小写url地址访问的方法

    2023-11-17 02:28:37
  • Python ORM框架Peewee用法详解

    2022-11-08 03:00:24
  • 5个提高你站点可读性的方法

    2011-01-31 17:48:00
  • python基础入门之列表(一)

    2023-11-23 19:33:42
  • JavaScript数值千分位格式化的两种简单实现方法

    2023-08-31 22:59:43
  • insert select与select into 的用法使用说明

    2012-01-05 18:47:58
  • 一个滑动门菜单例子源码

    2007-12-31 10:16:00
  • Python中关于面向对象概念的详细讲解

    2022-07-31 08:04:40
  • Python实现Opencv cv2.Canny()边缘检测

    2022-12-01 13:26:37
  • python入门:这篇文章带你直接学会python

    2021-04-15 04:46:42
  • Python+Opencv识别两张相似图片

    2022-11-07 09:12:55
  • asp之家 网络编程 m.aspxhome.com