Python练手例子(13)】的更多相关文章

73.反向输出一个链表. #python3.7 if __name__ == '__main__': ptr = [] for i in range(5): num = int(input('Please input a number:\n')) ptr.append(num) print(ptr) ptr.reverse() print(ptr) 74.列表排序及连接. #python3.7 if __name__ == '__main__': a = [1, 2, 3] b = [3, 4,…
16.一个数如果恰好等于它的因子之和,这个数就称为"完数".例如6=1+2+3.编程找出1000以内的所有完数. 程序分析:请参照程序Python 100例中的第14个例子 #python3.7 from sys import stdout for j in range(2, 1001): k = [] n = -1 s = j for i in range(1, j): if j % i == 0: n += 1 s -= i k.append(i) if s == 0: print…
13.打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身.例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方. 程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位. #python3.7 import math for n in range(100,1000): i = math.floor(n / 100)#百位数 j = math.floor((n -…
85.输入一个奇数,然后判断最少几个 9 除于该数的结果为整数. 程序分析:999999 / 13 = 76923. #!/usr/bin/python #coding=utf-8 if __name__ == '__main__': zi = int(input('输入一个数字:\n')) n1 = 1 c9 = 1 m9 = 9 sum = 9 while n1 != 0: if sum % zi == 0: n1 = 0 else: m9 *= 10 sum += m9 c9 += 1 p…
55.学习使用按位取反~. 程序分析:~0=1; ~1=0; (1)先使a右移4位. (2)设置一个低4位全为1,其余全为0的数.可用~(~0<<4) (3)将上面二者进行&运算. #python3.7 if __name__ == '__main__': a = 234 b = ~a print('The a\'s 1 complement is %d' % b) a = ~a print('The a\'s 2 complement is %d' % a) 56.画图,学用circ…
49.使用lambda来创建匿名函数. #python3.7 MAXIMUM = lambda x,y : (x > y) * x + (x < y) * y MINIMUM = lambda x,y : (x > y) * y + (x < y) * x if __name__ == '__main__': a = 10 b = 20 print('The larger one is %d' % MAXIMUM(a, b)) print('The lower one is %d'…
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…
7.将一个列表的数据复制到另一个列表中. 程序分析:使用列表[:]. #python3.7 #适用于简单列表(即列表中都是基本的元素) a1 = [1,2] b1 = a1[:] print(b1) #不适合列表中包含列表的情况,如果要复制的列表中包含列表,只会复制那个列表的列表的引用 a2 = [1,[2,3]] b2 = a2[:] a2[1].append(4) print(a2) print(b2) #此时b2复制的只是a2中[2,3]的引用 结果: [1, 2] [1, [2, 3,…
1.有四个数字:1.2.3.4,能组成多少个互不相同且无重复数字的三位数?各是多少? 程序分析:可填在百位.十位.个位的数字都是1.2.3.4.组成所有的排列后再去 掉不满足条件的排列. #本人的运行环境为python3.7 count = 0 for i in range(1,5): for j in range(1,5): for k in range(1,5): count+=1 print(i,j,k) print(‘Total:’,count) 2.企业发放的奖金根据利润提成.利润(I…
91.时间函数举例1. #!/usr/bin/python #coding=utf-8 import time if __name__ == '__main__': #time.time()返回当前的时间戳(1970纪元后经过的浮点秒数) print(time.time()) #time.ctime()把时间戳转化为time.asctime()的形式 print(time.ctime(time.time())) #time.asctime()返回"Tue Feb 26 09:12:37 2019…