Python函数(续),,先学习之前未完成的冒
Python函数(续),,先学习之前未完成的冒
先学习之前未完成的冒泡算法
li = [13,22,6,99,11]
从小到大
从第一个数字比较把大的往后移位
for m in range(4):
num1 = li[m]
num2 = li[m+1]
if num1 > num2:
temp = li[m]
li[m] = num2
li[m+1] = temp
print li
循环四次就把最大数放到列表的最后
for m in range(3):
num1 = li[m]
num2 = li[m+1]
if num1 > num2:
temp = li[m]
li[m] = num2
li[m+1] = temp
以此类推写成以下代码
vim day4-1.py
#!/usr/bin/python
# -*- coding:utf-8 -*-
li = [13,22,6,99,11]for m in range(4):#循环num1 = li[m]num2 = li[m+1]if num1 > num2:#前一个数字和后一个对比如果前面数字大与后面的对调temp = num1li[m] = num2li[m+1] = tempprint lifor m in range(3): num1 = li[m] num2 = li[m+1] if num1 > num2: temp = num1 li[m] = num2 li[m+1] = tempprint lifor m in range(2): num1 = li[m] num2 = li[m+1] if num1 > num2: temp = num1 li[m] = num2 li[m+1] = tempprint lifor m in range(1): num1 = li[m] num2 = li[m+1] if num1 > num2: temp = num1 li[m] = num2 li[m+1] = tempprint li#多次循环得到排序结果
[root@VPN scripts]# python day4-1.py
[13, 6, 22, 11, 99]
[6, 13, 11, 22, 99]
[6, 11, 13, 22, 99]
[6, 11, 13, 22, 99]
这样的循环很繁琐,假如不知道列表的长度更加麻烦需要多次循环
vim day4-2.py
#!/usr/bin/python# -*- coding:utf-8 -*-li = [13,22,6,99,11]for n in range(1,len(li)-1): #外层循环1,2,3,4 for m in range(len(li)-n): #内层循环4,3,2,1 num1 = li[m] num2 = li[m+1] if num1 > num2: temp = li[m] li[m] = li[m+1] li[m+1] = tempprint li
运行结果的一样的
[root@VPN scripts]# python day4-2.py
[6, 11, 13, 22, 99]
Python函数(续)
相关内容
- Python 100例,,#第一题:有四个数字
- python 字符串格式化操作符,,% 用于格式化字符串
- python入坑,,字符串里面有很多字符
- 用python训练机器学习,,//样本数据编号,色
- python作业,,1、修改haprox
- 011. Python中*args, **kwargs 和 pass 和self 解释,,*args, **k
- python 生成器,,python简单的一
- 使用python获得activemq信息(通过http://server:8161/,, 1 #
- Python连载60-Tkinter布局、按钮以及属性详解,,一、Tkin
- python open函数的坑,,python的ope
评论关闭