5):题目:输入三个整数x,y,z,请把这三个数由小到大输出。

    程序分析:我们想办法把最小的数放到x上,先将x与y进行比较,如果x>y则将x与y的值进行交换,然后再用x与z进行比较,如果x>z则将x与z的值进行交换,这样能使x最小。

    程序源代码:

#!/usr/bin/python
# -*- coding: UTF-8 -*- l = []
for i in range(3):
x = int(raw_input('integer:\n'))
l.append(x)
l.sort()
print l

    以上实例输出结果为:

integer:
8
integer:
5
integer:
6
[5, 6, 8]

    其他参考解法:

#!/usr/bin/python
# -*- coding: UTF-8 -*- x = int(raw_input("x:"))
y = int(raw_input("y:"))
z = int(raw_input("z:"))
a = {"x":x,"y":y,"z":z}
print '--------分割线--------'
for w in sorted(a, key=a.get):
print w, a[w]

    输出结果为:

x:5
y:2
z:8
--------分割线--------
y 2
x 5
z 8
#!/usr/bin/python
# -*- coding: UTF-8 -*- a=[1,3,5,2,4,5,7] n=len(a) for i in range(0,n):
for j in range(i,n) :
if (a[i] >= a[j] ):
tmp =a[i]
a[i]=a[j]
a[j]=tmp print a
#!/usr/bin/python
# -*- coding: UTF-8 -*- x= raw_input("int1:")
y= raw_input("int2:")
Max = max(x,y)
Min = min(x,y)
z= raw_input("int3:")
if z > Max :
print Min,Max,z
elif z < Min :
print z,Min,Max
else :
print Min,z,Max

    Python3.x 版本下使用利用冒泡排序方法:

#!/usr/bin/env python3

# 利用冒泡排序方法
def Sort(list):
n = len(list)
for i in range(1, n):
# 一次次的将最大的学出来
for j in range(1, n - i + 1):
if list[j - 1] > list[j]:
list[j - 1], list[j] = list[j], list[j - 1]
# 打印排序过程
print(list)
for i in range(0, n):
print(list[i]) # 读入数据
def inputData():
list_first = []
while True:
a = input("please input num:".strip())
if len(a) == 0:
return list_first
else:
list_first.append(int(a)) if __name__ == '__main__':
lt = inputData()
print(lt)
Sort(lt)

    使用 列表 sort=,可接受参数 reverse,默认为布尔值 false,按升序排序,设置为 true 则按降序排序:

#!/usr/bin/python
# -*- coding: UTF-8 -*- x = int(input('x='))
y = int(input('y='))
z = int(input('z='))
num = [x, y, z]
num.sort() # 对列表进行升序排序
print '这三个数由小到大的顺序为:',num
rnum = [x, y, z] # 对列表进行降序排序
rnum.sort(reverse=True)
print '这三个数由大到小的顺序为:',rnum
#!/usr/bin/env python
#coding:utf-8 D=raw_input("请输入三个数字,格式如 'a,b,c':")
li=D.split(",")
li2=[int(i) for i in li]
li2.sort()
print li2

    对输入类型进行了控制,如果输入错误,就提示用户,让用户再次输入,直到正确输入整数为止:

#!/usr/bin/env python
#coding:utf-8
#输入三个整数x,y,z,请把这三个数由小到大输出。
while 1:
try:
x = int(input("plz input x: "))
y = int(input("plz input y: "))
z = int(input("plz input z: "))
list1 = [x, y, z]
print(sorted(list1))
break
except:
print("请输入整数")
#! /usr/bin/python
# -*- coding:UTF-8 -*-
a = int(raw_input("请输入:"))
b = int(raw_input("请输入:"))
c = int(raw_input("请输入:"))
if a>b and a>c:
x = a
a = c
elif b>a and b>c:
x = b
b = c
else:
x = c
if a>b:
print b,a,x
else:
print a,b,x
#!/usr/bin/python
# -*- coding: UTF-8 -*- x = int(raw_input('x->'))
y = int(raw_input('y->'))
z = int(raw_input('z->'))
arr = [x,y,z]
for i in range (0,3):
for o in range (0,3):
for p in range (0,3):
if arr[i] > arr[o] > arr[p]:
print arr[i],arr[o],arr[p]
# -*- coding: utf-8 -*-

import numpy as np
x=int(input('请输入一个整数:\n'))
y=int(input('请输入一个整数:\n'))
z=int(input('请输入一个整数:\n'))
l = [x,y,z]
for i in range(len(l)):
a = np.argmin(l)
print(l[a])
del l[a]

    下例更简单,Python2.x 与 Python3.x 均可使用:

# -*- coding: utf-8 -*-
x=int(input('请输入一个整数:\n'))
y=int(input('请输入一个整数:\n'))
z=int(input('请输入一个整数:\n')) if(x > y):
    x,y = y,x;
if(y > z):
    y,z = z,y print((x,y,z));

    下例更通用:

# -*- coding: utf-8 -*-
elements=(4,3,5,2,6,1,7);
print("正序排列:{}".format(sorted(elements)));
print("倒序排列:{}".format(list(reversed(sorted(elements)))));

    python3的实例:

print(sorted([int(input("enter a integer: ")) for x in range(3)]))

    冒泡算法:

#!/usr/bin/python
# -*- coding: UTF-8 -*- #冒泡排序
a = [int(i) for i in raw_input("请输入:").split()]
m = len(a)
while m!=1:
for i in range(m-1):
if a[i]>a[i+1]:
x = a[i]
a[i] = a[i+1]
a[i+1] = x
m -= 1
print a

    列表sort:

#!/usr/bin/python
# -*- coding: UTF-8 -*- l = [int(i) for i in raw_input("请输入: ").split()]
l.sort()
print l

    看过这么些个例子,诸君有何感想???我的感觉就是,遇到问题,优先考虑内置函数,再来是算法,最后就是通常意义上的自己写一个函数了。。。

    如果感觉不错的话,请多多点赞支持哦。。。

  原文链接:https://blog.csdn.net/luyaran/article/details/80017404

python2.7练习小例子(五)的更多相关文章

  1. python2.7练习小例子(十五)

        15):题目:输出指定格式的日期.     程序分析:使用 datetime 模块.     程序源代码: #!/usr/bin/python # -*- coding: UTF-8 -*- ...

  2. python2.7练习小例子(二十九)

        29):1.题目:按相反的顺序输出列表的值. #!/usr/bin/python # -*- coding: UTF-8 -*- a = ['one', 'two', 'three'] for ...

  3. python2.7练习小例子(十二)

        12):题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身.例如:153是一个"水仙花数" ...

  4. python2.7练习小例子(八)

        8):题目:输出 9*9 乘法口诀表.     程序分析:分行与列考虑,共9行9列,i控制行,j控制列.     程序源代码: #!/usr/bin/python # -*- coding: ...

  5. python2.7练习小例子(七)

        7):题目:将一个列表的数据复制到另一个列表中.     程序分析:使用列表[:].     程序源代码: #!/usr/bin/python # -*- coding: UTF-8 -*- ...

  6. python2.7练习小例子(二十七)

        27):题目:一个5位数,判断它是不是回文数.即12321是回文数,个位与万位相同,十位与千位相同.      #!/usr/bin/python # -*- coding: UTF-8 -* ...

  7. python2.7练习小例子(二十八)

    28):题目:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母.     程序分析:用情况语句比较好,如果第一个字母一样,则判断用情况语句或if语句判断第二个字母. ...

  8. python2.7练习小例子(二十四)

        24):1.题目:利用递归方法求5!.     程序分析:递归公式:fn=fn_1*4! #!/usr/bin/python # -*- coding: UTF-8 -*- def fact( ...

  9. python2.7练习小例子(二十三)

        23):题目:求1+2!+3!+...+20!的和.     程序分析:此程序只是把累加变成了累乘. #!/usr/bin/python # -*- coding: UTF-8 -*- n = ...

  10. python2.7练习小例子(十八)

    19):题目:一个数如果恰好等于它的因子之和,这个数就称为"完数".例如6=1+2+3.编程找出1000以内的所有完数.      #!/usr/bin/python # -*- ...

随机推荐

  1. 通过vue-cli3构建一个SSR应用程序

    1.前沿 1.1.什么是SSR SSR(服务端渲染)顾名思义就是将页面在服务端渲染完成后在客户端直接展示. 1.2.客户端渲染与服务端渲染的区别 传统的SPA模式 即客户端渲染的模式 Vue.js构建 ...

  2. 观察者模式在One Order回调函数中的应用

    例如需求是搞清楚function module CRM_PRODUCT_I_A_CHANGE_ORGM_EC在什么样的场景下会被调用.当然最费时间的做法是设一个断点,然后跑对应的场景,观察断点何时被触 ...

  3. Locust性能测试3 no-web运行

    Locust也支持no-web的方式运行,直接通过控制台设置并发用户数.每秒启动用户数.持续压测时间. locust -f 脚本路径 -c 用户数 -r 每秒启动用户数 --run-time 持续压测 ...

  4. 高通Vuforia

    这里使用高通的Vuroria来做一个AR歌姬. 工具: Vuforia,MMD4Mecanim 模型: 初音未来pmd模型文件,极乐净土vmd动作文件. 逻辑: 当发现识别卡时:开启音乐,模型速度为1 ...

  5. idea 使用maven构建项目时,target bytecode version经常自动变化

    解决方法:在工程的pom.xml中添加 <build> <plugins> <plugin> <groupId>org.apache.maven.plu ...

  6. LocalDB的奇怪问题

    属性 MasterDBPath 不可用于 信息“Microsoft.SqlServer.Management.Smo.Information”.该对象可能没有此属性,也可能是访问权限不足而无法检索. ...

  7. C# Response 下载

    //TransmitFile实现下载 protected void Button1_Click(object sender, EventArgs e) { /* 微软为Response对象提供了一个新 ...

  8. Tomcat 启动速度优化

    创建一个web项目 选择发布到 汤姆猫 的下面 deploy path: 表示发布到的文件名称 把项目添加到 tomcat 里,运行,我们可以在 tomcat里找到我们发布的项目: 现在启动时间: 现 ...

  9. C# String与StringBuilder (转载)

    1.什么时候用String?什么时候用StringBuilder? 字符串一旦创建就不可修改大小,所以对字符串添加或删除操作比较频繁的话.那就不要用String而用StringBuilder. 例如: ...

  10. Progress

    这个标签用来表示进度,常用来表示下载的进度. <progress value="22" max="100"></progress>   ...