课后练习
#1.写一个装饰器,传入一个函数,测量一下这个函数的运行时间
import time
def wrapper(func):
def run(*args,**kwargs):
start = time.time()
func(*args,**kwargs)
end = time.time()
return end - start
return run
@wrapper
def test():
for i in range(100000):
print(i,end='')
print()
print(test())
#2自定义模块实现一个列表的顺序查找,找到指定元素后,返回该元素的下标。
然后在另外一个模块,导入查找模块,进行测试
- 文件:findrecord.py
def find(list1,value):
for i in range(len(list1)):
if list1[i] == value:
return i #找到了返回下标
return None #找不到
- 文件:testFind.py
from findrecord import find
list2 = [10,20,30,40,50]
result = find(list2,90)
if result is None:
print("没有该元素")
else:
print(list2[result])
#3 文件操作
#3.1 打开文件
第一个参数是文件名,可以是绝对路径也可以是相对路径 第二个参数是打开模式: r 只读 w 只写 a 追加 encoding
文件的编码格式#fp是文件指针,是一个可迭代对象
fp = open('txt1.txt','w')
#3.2.写文件内容
#wrtie的参数是字符串
fp.write("七天酒店,格林豪泰、如家、星期八")`
lines = ['北冥有鱼名曰为鲲\n','鲲之大一锅装不下\n','还需要两个烧烤架\n']
fp.writelines(lines)
#将缓冲区内容写入文件
fp.flush()
#3.关闭文件
fp.close()