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 相关文章推荐
用Python编写一个简单的Lisp解释器的教程
Apr 03 Python
用Python写冒泡排序代码
Apr 12 Python
深入理解python函数递归和生成器
Jun 06 Python
python3中os.path模块下常用的用法总结【推荐】
Sep 16 Python
python pygame实现2048游戏
Nov 20 Python
Python3.5装饰器原理及应用实例详解
Apr 30 Python
python3.x 生成3维随机数组实例
Nov 28 Python
Python创建数字列表的示例
Nov 28 Python
如何使用python代码操作git代码
Feb 29 Python
Python使用pyexecjs代码案例解析
Jul 13 Python
基于Python实现天天酷跑功能
Jan 06 Python
python+selenium自动化实战携带cookies模拟登陆微博
Jan 19 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
使用phpQuery采集网页的方法
2013/11/13 PHP
Yii开启片段缓存的方法
2016/03/28 PHP
php实现批量删除挂马文件及批量替换页面内容完整实例
2016/07/08 PHP
jQuery 源码分析笔记(5) jQuery.support
2011/06/19 Javascript
基于jQuery的input输入框下拉提示层(自动邮箱后缀名)
2012/06/14 Javascript
javascript从右边截取指定字符串的三种实现方法
2013/11/29 Javascript
jQuery中animate动画第二次点击事件没反应
2015/05/07 Javascript
jquery实现动态改变div宽度和高度
2015/05/08 Javascript
Seajs 简易文档 提供简单、极致的模块化开发体验
2016/04/13 Javascript
基于Bootstrap里面的Button dropdown打造自定义select
2016/05/30 Javascript
JS针对浏览器窗口关闭事件的监听方法集锦
2016/06/24 Javascript
在线引用最新jquery文件的实现方法
2016/08/26 Javascript
详解NodeJs开发微信公众号
2018/05/25 NodeJs
微信小程序图表插件wx-charts用法实例详解
2019/05/20 Javascript
Vue的编码技巧与规范使用详解
2019/08/28 Javascript
如何使用vue slot创建一个模态框的实例代码
2020/05/24 Javascript
[02:54]辉夜杯主赛事第二日败者组 iG.V赛后采访
2015/12/26 DOTA
在 Django/Flask 开发服务器上使用 HTTPS
2014/07/03 Python
Python中字符串的修改及传参详解
2016/11/30 Python
python中MethodType方法介绍与使用示例
2017/08/03 Python
django admin 后台实现三级联动的示例代码
2018/06/22 Python
Python3实现统计单词表中每个字母出现频率的方法示例
2019/01/28 Python
详解Numpy中的数组拼接、合并操作(concatenate, append, stack, hstack, vstack, r_, c_等)
2019/05/27 Python
Python 函数list&amp;read&amp;seek详解
2019/08/28 Python
python-sys.stdout作为默认函数参数的实现
2020/02/21 Python
Python Selenium安装及环境配置的实现
2020/03/17 Python
Python实现从N个数中找到最大的K个数
2020/04/02 Python
PyTorch 中的傅里叶卷积实现示例
2020/12/11 Python
阿迪达斯俄罗斯官方商城:adidas俄罗斯
2017/03/08 全球购物
缴纳养老保险的证明
2014/01/10 职场文书
党风廉政承诺书
2014/03/27 职场文书
2014年教研工作总结
2014/12/06 职场文书
中学生社会实践教育活动总结
2015/05/06 职场文书
MYSQL数据库使用UTF-8中文编码乱码的解决办法
2021/05/26 MySQL
Tomcat项目启动失败的原因和解决办法
2022/04/20 Servers
MySQL普通表如何转换成分区表
2022/05/30 MySQL