python3练习100题——005
继续做题~答案都会经过py3测试
原题网址:http://www.runoob.com/python/python-exercise-example5.html
题目:输入三个整数x,y,z,请把这三个数由小到大输出。
我的代码:
l=[]
for i in range(3):
x=int(input("please input a number:"))
l.append(x)
l.sort()
print(l)
思考:利用了可以对列表进行排序的sort函数,如果不能用呢?——在题目下面的答案中看到了冒泡排序法,而且应该考虑针对多个整数排序。当年学C语言的时候也有学过,感觉有点绕又忘啦~还是应该再学习下!以下代码来自原题下面的评论:
- 首先 定义一个对list中的int冒泡比对的函数:
def Sort(list):
n = len(list)
for i in range(1, n): #i可以取的值是[1,n-1] 冒泡法比较的循环就是要少一次,最后最小那个不用比就出来了
for j in range(, n - i + 1): #取1为下限,保证j-1位,最开始从0位开始比 取n-i+1为上限,保证j能够取到n-i位
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()) #strip()去除输入字符前后的空格
if len(a) == 0: #空白时停止读入的循环
return list_first
else:
list_first.append(int(a)) - 让函数直接被调用:
if __name__ == '__main__':
lt = inputData()
print("the list is:",lt)
Sort(lt)用这个if语句,让这个py文件直接使用的时候,函数直接被调用;也可以作为模块中的函数被引入到别的py文件。
 
分析很规范的答案~学到了冒泡排序算法的思想,也更加了解了写py文件的格式:比如如何定义函数,运行文件的时候直接调用
关于冒泡排序法,根据上面的改写了一个由前向后确定由小到大数字的方式:
def sort(list):
n=len(list)
for i in range(0,n-1): #上下限差值n-1
for j in range(i,n-1)[::-1]: #第一次循环上下限差值n-1
if list[j+1]<list[j]:
list[j+1],list[j] = list[j],list[j+1]
print(list)
for x in range(0,n):
print(list[x])
发现循环的上下标、比较的方向都不是最重要的,重要的是掌握思想:对于n个元素,比较n-1轮(第一个循环);第一轮比较n-1次,每轮-1,直到减少到1次(第二个循环)。
python3练习100题——005的更多相关文章
- python3练习100题——003
		
今天继续-答案都会通过python3测试- 原题链接:http://www.runoob.com/python/python-exercise-example3.html 题目:一个整数,它加上100 ...
 - python3练习100题——002
		
因为特殊原因,昨天没有做题.今天继续- 原题链接:http://www.runoob.com/python/python-exercise-example2.html 题目: 企业发放的奖金根据利润提 ...
 - python3练习100题——004
		
继续做题-经过python3的测试 原题链接:http://www.runoob.com/python/python-exercise-example4.html 题目:输入某年某月某日,判断这一天是 ...
 - python3练习100题——036
		
原题链接:http://www.runoob.com/python/python-exercise-example36.html 题目:求100之内的素数. 之前有类似的题,所以这次遇到觉得很容易了, ...
 - python3练习100题——035
		
原题链接:http://www.runoob.com/python/python-exercise-example34.html 题目:文本颜色设置. 学习了一下python3 的文本颜色设置. 其实 ...
 - python3练习100题——020
		
原题链接:http://www.runoob.com/python/python-exercise-example20.html 题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半:再落下 ...
 - python3练习100题——013
		
熟悉的水仙花数来了,,,... 原题链接:http://www.runoob.com/python/python-exercise-example13.html 题目:打印出所有的"水仙花数 ...
 - python3练习100题——056
		
题目:画图,学用circle画圆形. 可以用turtle.circle画图. import turtle turtle.setup(0.6,0.6) turtle.pensize(3) turtle. ...
 - python3练习100题——050
		
题目:输出一个随机数. 程序分析:使用 random 模块. import random print( random.randint(1,10) ) # 产生 1 到 10 的一个整数型随机数 pri ...
 
随机推荐
- 剑指offer-面试题40-最下的k个数-快速排序
			
/* 题目: 输入n个整数,找出其中最小的K个数.例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,. */ /* 思路: 快速排序,找到第k+1大的数,其左边则为最 ...
 - Magento2 自定义生成日志函数
			
/** * @param $info * @param string $file * @return bool */ public function logger($info, $file = &qu ...
 - 2019版本kali linux-3 系统安装与基本调试
			
本次的实验环境是: kali linux -3 kali linux 全版本地址: http://old.kali.org/kali-images/ 楼主的主系统是:kali linux 如果想学好 ...
 - 性能优化 && 用户体验
			
性能优化 下拉菜单那种最好是点击时候请求,或者是查询时候请求 分页加载 用户体验 有加载.进度条.友好提示
 - react 中 函数bind 和箭头函数
			
用bind形式 方便测试,含有this时候最好用bind形 其他情况用箭头函数 含有this的时候也可以用箭头函数
 - vue 问题总结
			
1. 动态设置图片, <img :src="url"> data() { return { url: require(相对路径) // 直接写相对路径会出错 } } 2 ...
 - js  image to base64  摘录
			
//传入图片路径,返回base64 //用处,由于在新增时,使用的是base64的格式,为了统一,在编辑时,也将图片转为base64,以便于统一处理 /* 使用: 因为图像处理存在一定的延时,所以通过 ...
 - 优先队列-UVA10603
			
#include<cstdio> #include<cstring> #include<queue> using namespace std; typedef st ...
 - php函数的巧妙应用
			
直接切入正题: 1.extract();函数从数组中把变量导入到当前的符号表中 对于数组中的每个元素,键名用于变量名,键值用于变量值. 第二个参数 type 用于指定当某个变量已经存在,而数组中又有同 ...
 - Win7最后一天,微软开始慌了!
			
就在昨天(2020年1月14日),服役十年的Win 7正式退出了微软舞台,从2009推出到2019,这十年也是很多90后的青春. 当然微软官方也做了送别,当然其目的也是为了推广Win10! 甚至面对痛 ...