python数字从大到小排列_Python练习题 005:三个数字由大到小排序输出

【Python练习题 005】输入三个整数x,y,z,请把这三个数由小到大输出。

-----------------------------------------------------------------------

这题想想应该比较容易:无非是先获取3个数字,然后比大小,按顺序输出即可。不过在写代码的过程中遇到了个难题:因为担心输入时输入非指定的分隔符,需要指定多个分隔符(英文逗号、中文逗号、空格),但 str.split() 只接受1个分隔符。

上网搜索了下,发现可以用正则表达式解决这个问题,于是就有了 import re 这一行了。代码如下:

import re

x, y, z = re.split(',| |,| ', input('请输入3个数字,用逗号或空格隔开:'))

x, y, z = int(x), int(y), int(z)

maxNo = max(x, y, z)

minNo = min(x, y, z)

print(maxNo, x+y+z-maxNo-minNo, minNo)

早就知道正则表达式很强大,但因为太难了,一直没敢碰啊…… 日后一定得好好研究下这部分内容!

【2016-10-14 更新】------------------------------------------------------------

坐地铁,手机里读了篇文章,看到了 str.sort() 这个方法,觉得可以用来解这题。思路是:用 re.split() 得到 3 个字符型数字的列表,把字符转换为数字,排下序,然后 print() 不就都解决了吗?代码如下:

import re

lst = re.split(',| |,| ', input('请输入3个数字,用逗号或空格隔开:'))

for i in range(len(lst)):

lst[i] = int(lst[i])

lst.sort()

print(lst)

果然简单很多啊~~~

++++++++++++++++++++++++++++++++++++++

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

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

相关文章

Android之运行的错误:java.lang.UnsatisfiedLinkError: Couldn‘t find cibloger.so

原因: 因为没有找到相遇的so文件 解决办法: 在eclipse里面的lib文件夹里面的armeabi文件夹加上相应的so文件就可以了

Martin Fowler:数字化时代,远程与本地协同工作孰优孰劣?| IDCF

作者:Martin Fowler译者:冬哥原文:https://martinfowler.com/articles/remote-or-co-located.html远程工作与同地工作之间不是简单的二分法,相反,团队有多种分布模式,每种模式都有不同的权衡和适合的有效技…

android:自己实现能播放网络视频url的播放器

2019独角兽企业重金招聘Python工程师标准>>> android原生自带的播放器一般只能播放本地视频,而没有播放url的功能。不过android系统中有一个VideoView的控件可以实现这一功能。 简单实现如下: public class MyVideoPlay extends Activity i…

Ant 学习

到了新公司,发现公司使用ant 来代码生成。本来学习后写下来。在网上找到一篇教程,实在是非常给力。。。 就把连接记下来吧:http://www.blogjava.net/amigoxie/archive/2007/11/09/159413.html 可以一起学习。转载于:https://www.cnblogs.com/…

iOS调用系统相册、相机 显示中文标题

2019独角兽企业重金招聘Python工程师标准>>> 最终在info.plist设置解决问题 发现在项目的info.plist里面添加Localized resources can be mixed 设置为: YES(表示是否允许应用程序获取框架库内语言)即可解决这个问题。 转载于:htt…

linux之nl命令

nl命令在linux系统中用来计算文件中行号。nl 可以将输出的文件内容自动的加上行号!其默认的结果与 cat -n 有点不太一样, nl 可以将行号做比较多的显示设计,包括位数与是否自动补齐 0 等等的功能。 1.命令格式: nl […

使用云原生应用和开源技术的创新攻略

Kubernetes 和云原生应用的增长以及普及是现象级的。根据 IDC 的数据,到2025年,90%以上的新应用程序将是云原生的。许多客户已受益于云原生设计模型,让新一代应用程序更加敏捷、可靠、可扩展,还兼顾了安全。说到服务的开发&#x…

SVM支持向量机原理及核函数

原文链接:SVM支持向量机原理及核函数 转载请注明出处 支持向量机原理 大距离分类算法 1、名词解释: 分割超平面:如下图所示,构造一个分割线把圆形的点和方形的点分开,这个线称为分割超平面。支持向量:…

SQL对Xml字段的操作

转:http://www.cnblogs.com/youring2/archive/2008/11/27/1342288.html T-Sql操作Xml数据 一、前言 SQL Server 2005 引入了一种称为 XML 的本机数据类型。用户可以创建这样的表,它在关系列之外还有一个或多个 XML 类型的列;此外,…

URL 路径长度限制(错误:指定的文件或文件夹名称太长)

本节讨论 URL 的构成、SharePoint 2010 构建 URL 的方式、URL 的编码和加长以及作为其他 URL 中的参数传递的方式。 SharePoint URL 的构成 SharePoint URL 的总长度等于文件夹或文件路径的长度,包括协议和服务器名称和文件夹或文件名称,以及作为 URL 的…

linux之less 命令

less 工具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大。less 的用法比起 more 更加的有弹性。在 more 的时候,我们并没有办法向前面翻, 只能往后面看,但若使用了 less …

生产物流

前段时间有朋友问我关于“生产过程件入库和盘点”的事情,在《仓库盘点》一文中,我们讲解了“半成品”与“过程件”的概念的区分以及其是否入库和盘点做了说明。最近又有朋友问我关于物流与工艺流的结合应用问题,今天特写了此篇文章供大家参考…

sklearn线性回归详解

图片若未能正常显示,点击下面链接: http://ihoge.cn/2018/Logistic-regression.html 在线性回归中,我们想要建立一个模型,来拟合一个因变量 y 与一个或多个独立自变量(预测变量) x 之间的关系。 给定: 数据集 {(x…

linux之more命令

more命令,功能类似 cat ,cat命令是整个文件的内容从上到下显示在屏幕上。 more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back&…

DateOnly和TimeOnly类型居然不能序列化!!! .Net 6下实现自定义JSON序列化

前言.Net 6引入了DateOnly和TimeOnly结构,可以存储日期和时间。但在实际使用时,发现一个很尴尬的问题,DateOnly和TimeOnly居然不能被序列化:var builder WebApplication.CreateBuilder(args);var app builder.Build();app.MapGe…

PHP面向对象之旅:抽象类继承抽象类(转)

可以理解为对抽象类的扩展 抽象类继承另外一个抽象类时,不用重写其中的抽象方法。抽象类中,不能重写抽象父类的抽象方法。这样的用法,可以理解为对抽象类的扩展。 下面的例子,演示了一个抽象类继承自另外一个抽象类时,…

Scala编程指南

1.scala简介 2004年,martin ordersky发明,javac的编译器,后来spark,kafka应用广泛,twitter应用推广。它具备面向对象和函数式编程的特点。 官网:www.scala-lang.org,最近版本2.12.5,我们用的是2.10.42.环境…

win7 64位下如何安装配置mysql-5.7.4-m14-winx64(安装记录)

1. mysql-5.7.4-m14-winx64.zip下载 官方网站下载地址:http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.17-winx64.zip 2、解压到D:\mysql.(路径自己指定) 3、在D:\mysql\mysql-5.7.4-m14-winx64下新建my.ini配置文件 内容如下&am…