python
liang635349961
这个作者很懒,什么都没留下…
展开
-
几种方法求10万以内素数算法的用时小测试
1、使用while循环,不对算法做任何优化import datetimestart = datetime.datetime.now()a = 2while a < 100000: i = 2 while i < a: if a % i == 0: break i += 1 #else: ...原创 2018-10-19 09:56:13 · 577 阅读 · 0 评论 -
使用*复制列表元素时内存地址的引用
当一个列表的元素为嵌套列表或者其他可嵌套数列时,使用*来复制列表元素,他的每个元素的内存地址都是指向同一块区域,当其中一个元素中的元素发生改变时,别的元素也同样会发生改变,比如a = [[1,2,3]] * 3print(a)a[1][1] = 'x'print(a)第一次打印出a列表为[[1,2,3],[1,2,3],[1,2,3]]第二次打印出a列表为[[1, ‘x’, 3], ...原创 2018-10-19 17:22:34 · 365 阅读 · 0 评论 -
两种方法实现九九乘法表
两种方法实现九九乘法表n = 1while n &amp;lt;= 9: for i in range(1,n+1): print(i,'*',n,'=',i*n,end=' ') print('\n') n += 1for n in range(1,10): for i in range(1,10): if i &amp;lt;= n:...原创 2018-10-17 16:58:08 · 220 阅读 · 0 评论 -
判断质数的两种方法
用python判断质数n = int(input('&gt;&gt;&gt;'))a = 2while a &lt; n: if n % a == 0: break a += 1else: if n &gt;= 2: print(n,'yes')n = int(input('&gt;&gt;&原创 2018-10-17 17:01:37 · 347 阅读 · 0 评论 -
利用对称性打印菱形
利用对称性打印菱形,如果为偶数行的话,第一和最后一行就会全是空格n = int(input('>>>'))avg = n // 2for i in range(-avg,avg+1): x = abs(i) print(' ' * x + '*' * (n-x-x) + ' ' * x)...原创 2018-10-17 17:35:50 · 332 阅读 · 0 评论 -
简单选择排序的几个优化点
简单选择排序的几个优化点import randoml = [random.randint(1,100) for _ in range(20)]print(l)for i in range(len(l)//2): minindex = i maxindex = -i-1 for j in range(i+1, len(l)-i): if l[j] < l[minindex]:...原创 2018-11-13 11:27:23 · 215 阅读 · 0 评论 -
检查函数传入参数的合法性
python是一门动态语言,因此在调用函数的时候,可以传入任何类型的数据,而他又是一门强类型语言,当传入的参数不合法时,便会在内部报错。为了减少这一错误的发生,python从3.5开始引入了函数注解,如下所示:def fn(x:int, y:int): pass配合inspect模块,可以有效的检查传入函数是否合法...原创 2018-11-13 20:51:31 · 1963 阅读 · 0 评论