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


Posted in Python onAugust 07, 2019

前言

大部分初学编程的人来说刚开始都会练习判断两个数或者三个数的大小,来熟悉某种语言的特性和最基本的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)

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

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
在Django中创建第一个静态视图
Jul 15 Python
python使用matplotlib绘制柱状图教程
Feb 08 Python
Python实现的手机号归属地相关信息查询功能示例
Jun 08 Python
python实现给微信公众号发送消息的方法
Jun 30 Python
python实现微信接口(itchat)详细介绍
Oct 23 Python
Python基于hashlib模块的文件MD5一致性加密验证示例
Feb 10 Python
Python 创建空的list,以及append用法讲解
May 04 Python
python将pandas datarame保存为txt文件的实例
Feb 12 Python
Python简易版停车管理系统
Aug 12 Python
python函数的作用域及关键字详解
Aug 20 Python
Python lambda表达式filter、map、reduce函数用法解析
Sep 11 Python
Python pandas 列转行操作详解(类似hive中explode方法)
May 18 Python
Python使用import导入本地脚本及导入模块的技巧总结
Aug 07 #Python
python可视化篇之流式数据监控的实现
Aug 07 #Python
Python+AutoIt实现界面工具开发过程详解
Aug 07 #Python
Django中的用户身份验证示例详解
Aug 07 #Python
浅谈Python中(&amp;,|)和(and,or)之间的区别
Aug 07 #Python
Python操作远程服务器 paramiko模块详细介绍
Aug 07 #Python
使用Python快乐学数学Github万星神器Manim简介
Aug 07 #Python
You might like
PHP 增加了对 .ZIP 文件的读取功能
2006/10/09 PHP
Smarty+QUICKFORM小小演示
2007/02/25 PHP
php提交表单时判断 if($_POST[submit])与 if(isset($_POST[submit])) 的区别
2011/02/08 PHP
php旋转图片90度的方法
2013/11/07 PHP
使用ob系列函数实现PHP网站页面静态化
2014/08/13 PHP
浅谈PHP中关于foreach使用引用变量的坑
2016/11/14 PHP
老生常谈PHP面向对象之注册表模式
2017/05/26 PHP
自动更新作用
2006/10/08 Javascript
Jquery cookie操作代码
2010/03/14 Javascript
jQuery 获取对象 定位子对象
2010/05/31 Javascript
JavaScript 基础篇之运算符、语句(二)
2012/04/07 Javascript
浅析JavaScript中的CSS属性及命名规范
2013/11/28 Javascript
如何防止回车(enter)键提交表单
2014/05/11 Javascript
JavaScript将数组转换成CSV格式的方法
2015/03/19 Javascript
详解JavaScript中shift()方法的使用
2015/06/09 Javascript
JSONObject使用方法详解
2015/12/17 Javascript
轻松实现JavaScript图片切换
2016/01/12 Javascript
javascript滚轮控制模拟滚动条
2016/10/19 Javascript
vuejs+element UI点击编辑表格某一行时获取内容填入表单的示例
2018/10/31 Javascript
js实现移动端吸顶效果
2020/01/08 Javascript
Node.js API详解之 net模块实例分析
2020/05/18 Javascript
[01:10]DOTA2次级职业联赛 - Fly战队宣传片
2014/12/01 DOTA
[01:32]DOTA2上海特锦赛现场采访:最想COS的英雄
2016/03/25 DOTA
Python中有趣在__call__函数
2015/06/21 Python
Python Pandas分组聚合的实现方法
2019/07/02 Python
如何更改 pandas dataframe 中两列的位置
2019/12/27 Python
基于Tensorflow一维卷积用法详解
2020/05/22 Python
python基于pygame实现飞机大作战小游戏
2020/11/19 Python
Kathmandu澳洲户外商店:新西兰户外运动品牌
2017/11/12 全球购物
New Era英国官网:美国棒球帽品牌
2018/03/21 全球购物
GIVENCHY纪梵希官方旗舰店:高定彩妆与贵族护肤品
2018/04/16 全球购物
应用数学自荐书范文
2013/11/24 职场文书
七一建党节演讲稿
2014/09/11 职场文书
教师正风肃纪剖析材料
2014/10/20 职场文书
工作计划范文之财务管理
2019/08/09 职场文书
JavaScript原始值与包装对象的详细介绍
2021/05/11 Javascript