08: python基础练习题
1、while循环实现输出2 - 3 + 4 - 5 + 6 ... + 100 的和
# 使用while循环实现输出2 - 3 + 4 - 5 + 6 ... + 100 的和 s = 0 i = 2 while i <= 100: if i % 2 == 0: s += i else: s -= i i += 1 print(s,i) # 运行结果:51 101
2、for循环实现9乘9乘法表
for i in range(1,10,1): for j in range(1,i+1,1): # \t 代表的是制表符 end="" 表示打印对象以什么结尾 ,默认是 \n 也就是换行 print('%dx%d=%d'%(i,j,i*j),end='\t') print("\n") # 运行结果: # 1x1=1 # 2x1=2 2x2=4 # 3x1=3 3x2=6 3x3=9 # 4x1=4 4x2=8 4x3=12 4x4=16 # 5x1=5 5x2=10 5x3=15 5x4=20 5x5=25 # 6x1=6 6x2=12 6x3=18 6x4=24 6x5=30 6x6=36 # 7x1=7 7x2=14 7x3=21 7x4=28 7x5=35 7x6=42 7x7=49 # 8x1=8 8x2=16 8x3=24 8x4=32 8x5=40 8x6=48 8x7=56 8x8=64 # 9x1=9 9x2=18 9x3=27 9x4=36 9x5=45 9x6=54 9x7=63 9x8=72 9x9=81
3、台阶问题/斐波纳挈
问题:一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法
fib = lambda n: n if n <= 2 else fib(n - 1) + fib(n - 2) print(fib(4)) # 5
#! /usr/bin/env python # -*- coding: utf-8 -*- import sys sys.setrecursionlimit(1000000000) #设置系统最大递归深度 def fib(n): if n <= 2: return n else: return fib(n-1) + fib(n-2) print(fib(4)) # 5
4、变态台阶问题
问题:一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法
fib = lambda n: n if n < 2 else 2 * fib(n - 1) print(fib(4)) # 8
5、List = [-2, 1, 3, -6],如何实现以绝对值大小从小到大将 List 中内容排序
l = [-2, 1, 3, -6] print(sorted(l,key=abs)) # [1, -2, 3, -6]
6、列表的sort方法和 sorted的区别是什么?
1) sort 是list的方法,改变list对象的顺序,返回值为None
2) sorted是Python的内置方法,适用iterable对象,返回值是新列表,不影响原来的iterable的顺序
7、请写出一段Python代码实现删除一个list里面的重复元素
#1、set去重 a=[1,2,3,4,1,2,3,4] print( list(set(a)) ) # [1, 2, 3, 4] #2、使用字典去重 b = {} b=b.fromkeys(a) c=list(b.keys()) print(b) # {1: None, 2: None, 3: None, 4: None} print(c) # [1, 2, 3, 4]
8、求 A^n 不要使用现有模块
#! /usr/bin/env python # -*- coding: utf-8 -*- class Solution(object): def __init__(self, A): self.A = A def run(self, n): if n == 0: Y = 1 elif n > 0: Y = self.positive(n) else: ret = self.positive(-n) Y = float(1) / float( ret ) return Y def positive(self, n): ret = 1 for i in range(n): ret = self.A * ret return ret s = Solution(2) print s.run(10) # 1024 print s.run(-3) # 0.125 print s.run(0) # 1
作者:学无止境
出处:https://www.cnblogs.com/xiaonq
生活不只是眼前的苟且,还有诗和远方。