python核心编程v2.0 第8章习题答案
来源:互联网 发布:淘宝订单险 编辑:程序博客网 时间:2024/05/22 18:38
2.
if __name__ == '__main__': f = int(raw_input('from:')) t = int(raw_input('to:')) i = int(raw_input('increment:')) x = 0 while f+x <= t: print f+x x = x + i
3.
print range(0,10) print range(3,21,3) print range(-20,1080,220)
4.
def showMaxFactor(num): count = num/2 while count>1: if num % count == 0: return False break count = count-1 else: return Trueif __name__ == '__main__': while True: num = int(raw_input('number')) print showMaxFactor(num)
5.
def getfactors(num): lis = [] for i in range(num): if i == 0: pass else: if num % i == 0: lis.append(i) lis.append(num) return lisif __name__ == '__main__': while True: num = int(raw_input('number')) lis = getfactors(num) for i in lis: print i
6.
def showMaxFactor(num): count = num/2 while count>1: if num % count == 0: return False break count = count-1 else: return Truedef getfactors(nex,lis): i=2 while i <= nex: if nex % i == 0 and showMaxFactor(i) == True: lis.append(i) nex = nex/i #迭代寻找,注意完成后需要break否则会出现错误 getfactors(nex,lis) break i = i+1 return lisif __name__ == '__main__': while True: num = int(raw_input('number')) lis = [] li = getfactors(num,lis) for i in li: print i
7.
def getfactors(num): lis = [] for i in range(num): if i == 0: pass else: if num % i == 0: lis.append(i) return lisdef isperfect(num,lis): s =sum(lis) if num == s : return 1 else: return 0if __name__ == '__main__': while True: num = int(raw_input('number')) lis = getfactors(num) # print lis print isperfect(num,lis)
8.
def factorial(num): i = 1 sum = 1 while i <= num: sum = sum*num num = num -1 i = i+1 return sumif __name__ == '__main__': while True: num = int(raw_input('number')) print factorial(num)
9.
def f(num): lis = [1,1] i = 2 while i < num: lis.append(lis[i-2]+lis[i-1]) i = i+1 return lis[num-1]if __name__ == '__main__': while True: num = int(raw_input('number')) ls = f(num) print ls
10.
元音字母为aeiou 读取后比对即可,单词用空格来确定。特殊情况需要查语法,未补充,大概思路一样,会涉及读到某个字母则再向下多读一个的情况
def count(sentence): ls = list('aeiou') num1 = 0 num2 = 0 num3 = 1 for i in sentence: if i == ' ': num3=num3+1 elif i in ls: num1 = num1+1 else: num2 = num2+1 print num1,num2,num3if __name__ == '__main__': while True: sentence = raw_input('sentence') count(sentence)
11.
def check(name): if name.count(',')!=1: return 1 else: return 0if __name__ == '__main__': ls = [] wrong = 0 for i in range(4): name = raw_input('name') if check(name)!= 0: wrong = wrong + check(name) print 'now wrong',wrong else: ls.append(name) ls.sort() for i in ls: print i
12.
if __name__ == '__main__': num1 = int(raw_input('from')) num2 = int(raw_input('to')) print 'DEC','BIN','OCT','HEX', #若这个范围内会出现可打印ascll码的范围,则添加一栏 if 32<=num2<=127 or 32<=num1<=127 : print 'ASCLL' else: print '' for i in range(num1,num2+1): print i,bin(i),oct(i),hex(i),chr(i)
13.
参考百度文库中一份答案
timeit 用于测指令耗时
import timeitli = ['wqe','as','we','qwr','wqee']li *= 10000#不在这两个函数中使用print,print耗时较大def inter_direct(): for i in li: j = idef inter_index(): for i in range(len(li)): j = li[i]if __name__ == '__main__': tindex = timeit.Timer("inter_index()","from __main__ import inter_index") tdirect = timeit.Timer("inter_direct()", "from __main__ import inter_direct") print tindex.timeit(10) print tdirect.timeit(10)
结果:
0.02228312019040.00943949609575
通过索引的迭代:使用range()函数得到list的索引数列表,再利用索引查找对应的序列对象,查找增加了复杂度
通过序列项的迭代:变量被设置为list中特定的某个元素
阅读全文
0 0
- python核心编程v2.0 第8章习题答案
- Python核心编程v2.0 第10章习题答案
- Python核心编程v2.0 第11章习题答案
- Python核心编程v2.0 第12章习题答案
- python核心编程v2.0 第14章习题答案
- Python核心编程v2.0 第二章习题答案
- python核心编程v2.0 第三章习题答案
- python核心编程v2.0 第四章习题答案
- python核心编程v2.0 第五章习题答案
- python核心编程v2.0 第六章习题答案
- python核心编程v2.0 第7章习题答案(下)
- python核心编程v2.0 第9章习题答案(上)
- Python核心编程v2.0 第9章习题答案(下)
- python核心编程-第8章课后习题答案
- python核心编程第6章习题答案
- python核心编程-第7章课后习题答案
- python核心编程v2.0 第7章习题(上)
- Python核心编程v2.0 第13章习题(上)
- 最短路水题
- xml文件上传数据库
- 使用 IoC 反转控制的三种设计模式
- React 5 生命周期
- xCode8 之后的自动打包
- python核心编程v2.0 第8章习题答案
- C# 调用exe 传参 ,并获取打印值
- OpenCV下应用参数已知的彩色相机给黑白相机获取的点云补色
- HighCharts(1):实例化Highchart并绑定到容器上的三种方式
- js设置光标始终在文本最后
- 保留道路
- JavaScript实现的网页计算器功能
- [机器学习]信息&熵&信息增益
- Elasticsearch Nest聚合分组取最小值查询