Python练手例子(7)
2019-02-17 01:53:56来源:博客园 阅读 ()
37、对10个数进行排序。
程序分析:可以利用选择法,即从后9个比较过程中,选择一个最小的与第一个元素交换,下次类推,即用第二个元素与后8个进行比较,并进行交换。
#python 3.7 if __name__ == '__main__': N = 10 print('请输入10个数字:\n') l = [] print for i in range(N): l.append(int(input('请输入一个数字:\n'))) print for i in range(N): print(l[i]) print #排列10个数字 for i in range(N - 1): min = i for j in range(i + 1, N): if l[min] > l[j] : min = j l[i], l[min] = l[min], l[i] print('排列之后:') for i in range(N): print(l[i])
38、求一个3*3矩阵主对角线元素之和。
程序分析:利用双重for循环控制输入二维数组,再将a[i][i]累加后输出。
#python 3.7 if __name__ == '__main__': a = [] sum = 0.0 for i in range(3): a.append([]) for j in range(3): a[i].append(float(input('input num:\n'))) for i in range(3): sum += a[i][i] print(sum)
39、有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
程序分析:首先判断此数是否大于最后一个数,然后再考虑插入中间的数的情况,插入后此元素之后的数,依次后移一个位置。
#python 3.7 if __name__ == '__main__': #加入0作为占位符 a = [1, 4, 6, 9, 13, 16, 19, 28, 40, 100, 0] print('原始列表:') for i in range(len(a)): print(a[i], end = ' ') number = int(input('\n插入一个数字:\n')) end = a[9] if number > end: a[10] = end else: for i in range(10): if a[i] > number: temp1 = a[i] a[i] = number for j in range(i + 1, 11): temp2 = a[j] a[j] = temp1 temp1 = temp2 break print('排序后列表:') for i in range(11): print(a[i], end = ' ')
注:在Python3.x中,print(a[i], end = ' ')可以让数字不换行
40、将一个数组逆序输出。
程序分析:用第一个与最后一个交换。
#python 3.7 if __name__ == '__main__': a = [9, 6, 5, 4, 1] N = len(a) print(a) for i in range(int(len(a) / 2)): a[i], a[N - i - 1] = a[N - i - 1], a[i] print(a)
41、模仿静态变量的用法。
#python 3.7
def varfunc(): var = 0 print('var = %d' % var) var += 1 if __name__ == '__main__': for i in range(3): varfunc() # 类的属性 # 作为类的一个属性 class Static: StaticVar = 5 def varfunc(self): self.StaticVar += 1 print(self.StaticVar) print(Static.StaticVar) a = Static() for i in range(3): a.varfunc()
42、学习使用auto定义变量的用法。
程序分析:没有auto关键字,使用变量作用域来举例吧。
#python3.7 num = 2 def autofunc(): num = 1 print('internal block num = %d' % num) num += 1 for i in range(3): print('The num = %d' % num) num += 1 autofunc()
参考资料:
Python 100例
原文链接:https://www.cnblogs.com/finsomway/p/10384822.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:迭代器的应用以及说明的问题
- python3基础之“术语表(2)” 2019-08-13
- python3 之 字符串编码小结(Unicode、utf-8、gbk、gb2312等 2019-08-13
- Python3安装impala 2019-08-13
- 小白如何入门 Python 爬虫? 2019-08-13
- python_字符串方法 2019-08-13
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash