实例 6
题目
斐波那契数列;
分析
利用递归计算斐波那契数列,输入斐波那契数列的n位,调用递归计算出第n位的数列值;
代码
#!/usr/bin/python3 # -*- coding: utf-8 -*- # @Time : 2018-10-3 21:10 # @Author : Manu # @Site : # @File : fib.py # @Software: PyCharm def fib(num): if num <= 2: result = 1 else: result = fib(num - 1) + fib(num - 2) return result while True: num = int(input('num = ')) print('斐波那契数列的第 %d 个值是 %d' % (num, fib(num)))
实例7
题目
将一个列表的数据复制到另一个列表中;
分析
Python复制数据有三种方式:直接赋值、浅拷贝、深拷贝;
代码
#!/usr/bin/python3 # -*- coding: utf-8 -*- # @Time : 2018-10-4 10:20 # @Author : Manu # @Site : # @File : copy.py # @Software: PyCharm import copy # 直接赋值,相当于对象引用,即就是另起一个名字 print('assignment:') list1 = [1, 3, 5, 7, 9, 'Manu Ginobili', 20] list2 = list1 print(list2) # 浅拷贝(copy),拷贝父对象,不拷贝子对象 print('copy:') list1 = [1, 3, 5, 7, 9, 'Manu Ginobili', 20] list2 = list1.copy() list1.append(21) print(list1) print(list2) list2.append(14) print(list1) print(list2) # 深拷贝(deepcopy),完全拷贝父对象及子对象 print('Deepcopy:') list1 = [1, 3, 5, 7, 9, 'Manu Ginobili', 20] list2 = copy.deepcopy(list1) list1.append('Duncan') print(list1) print(list2) list2.append('Paker') print(list1) print(list2)
实例8
题目
输出 9*9 乘法口诀表
分析
两层循环,将乘法口诀表以左下三角格式打印出
代码
#!/usr/bin/python3 # -*- coding: utf-8 -*- # @Time : 2018-10-7 18:38 # @Author : Manu # @Site : # @File : multiple.py # @Software: PyCharm for i in range(1, 10): for j in range(1, i + 1): print('%d * %d = %d\t' %(i, j, i * j), end=' ') print()
实例9
题目
暂停一秒输出;
分析
调用time
模块中的sleep()
方法即可;
代码
#!/usr/bin/python3 # -*- coding: utf-8 -*- # @Time : 2018-10-7 18:47 # @Author : Manu # @Site : # @File : wait1s.py # @Software: PyCharm import time spurs = ['Tim Duncan', 'Manu Ginobili', 'Tony Paker'] for spur in spurs: print(spur) time.sleep(1)
实例10
题目
暂停一秒输出,并格式化当前时间;
分析
使用time
模块的strftime()
方法实现;
代码
#!/usr/bin/python3 # -*- coding: utf-8 -*- # @Time : 2018-10-7 18:54 # @Author : Manu # @Site : # @File : wait1s_format.py # @Software: PyCharm import time print('当前时间:') print(time.strftime("%Y-%m-%d %H:%M:%S %a", time.localtime())) time.sleep(1) print('等待一秒后时间:') print(time.strftime("%Y-%m-%d %H:%M:%S %a", time.localtime()))