Python3经典100例(②)

2019-09-09 17:24:06 浏览数 (1)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/github_39655029/article/details/82934396

实例6

  • 题目:斐波那契数列;
  • 分析:利用递归计算斐波那契数列,输入斐波那契数列的n位,调用递归计算出第n位的数列值;
  • 代码:
代码语言:javascript复制
#!/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复制数据有三种方式:直接赋值、浅拷贝、深拷贝;
  • 代码:
代码语言:javascript复制
#!/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 乘法口诀表
  • 分析:两层循环,将乘法口诀表以左下三角格式打印出
  • 代码:
代码语言:javascript复制
#!/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 = %dt' %(i, j, i * j), end=' ')
    print()
  • 结果:

实例9

  • 题目:暂停一秒输出;
  • 分析:调用time模块中的sleep()方法即可;
  • 代码:
代码语言:javascript复制
#!/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()方法实现;
  • 代码:
代码语言:javascript复制
#!/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()))
  • 结果:

0 人点赞