x < 0 执行C; x > 0 执行B;x == 0 执行D
# -*- coding:utf-8 -*- f = int(raw_input(u'请输入起始数字'.encode('gbk'))) t = int(raw_input(u'请输入结束数字'.encode('gbk'))) i = int(raw_input(u'请输入步长'.encode('gbk'))) for eachnumber in range(f, t+1, i): print eachnumber,
3. a:range(10)
b:range(3, 16, 3)
c:range(-20, 861, 220)
4.
# -*- coding:utf-8 -*- def isprime(num): count = num / 2 while count > 1: if not num % count: return False count -= 1 else: return True
5.
# -*- coding:utf-8 -*- def getfactors(num): factors = [] count = 1 while count <= num: if not num % count: factors.append(count) count += 1 return factors
6.
7.
# -*- coding:utf-8 -*- def getfactors(num): factors = [] count = 1 while count <= num: if not num % count: factors.append(count) count += 1 return factors def isperfect(num): factors = getfactors(num)[:-1] sumfator = 0 for factor in factors: sumfator += factor if sumfator == num: return 1 else: return 0
8.
# -*- coding:utf-8 -*- def factorial(N): '''本函数返回给定参数N的阶乘 N! ''' factorial = 1 for num in range(1, N+1): factorial *= num return factorial
9.
# -*- coding:utf-8 -*- def Fibonacci(N): Fibonacciseq = [1, 1] if N <= 2: return 1 else: n = 3 while n <= N: Fin = Fibonacciseq[n-3] + Fibonacciseq[n-2] Fibonacciseq.append(Fin) n += 1 return Fibonacciseq[N-1]
10.
11.
# -*- coding:utf-8 -*- print u'输入的格式是姓-名,中间用英文逗号隔开' namenum = int(raw_input(u'请输入名字的个数:'.encode('gbk'))) names = [] errors = 0 for i in range(namenum): prompt = u'请输入第 %d 个姓-名' % i ai = raw_input(prompt.encode('gbk')) if ',' not in ai: errors += 1 print u'格式输错了 %d 次,请注意!' % errors names.append(ai.replace(' ', ',')) else: names.append(ai) print u'按照姓氏排序后输入的姓名如下:' for name in names: print ' ' * 4,name
12.
# -*- coding:utf-8 -*- print '-' * 20 startnum = int(raw_input(u' 请输入起始值:'.encode('gbk'))) endnum = int(raw_input(u' 请输入结束值:'.encode('gbk'))) listheada = u'十进制 二进制 八进制 十六进制 ASCII' listheadb = '-' * 40 def stringformat(str1,str2): if len(str1) < len(str2): for j in range(len(str2)-len(str1)): str1 = '0' + str1 return str1 binend = bin(endnum)[2:] octend = oct(endnum)[1:] hexend = hex(endnum)[2:] print listheada print listheadb for i in range(startnum, endnum+1): bini = bin(i)[2:] bini = stringformat(bini, binend) octi = oct(i)[1:] octi = stringformat(octi, octend) hexi = hex(i)[2:] hexi = stringformat(hexi, hexend) if i not in [0, 7, 8, 9, 10, 13, 32]: print i, ' ', bini, ' ', octi, ' ', hexi, ' ', chr(i) else: print i, ' ', bini, ' ', octi, ' ', hexi
13.个人理解是 通过序列索引遍历多了一些步骤 所以会变慢