例如:min_max(2,5,7,8,4) 返回:{‘max’:8,’min’:2}
#代码模板 def area(): def 计算长方形面积(): pass def 计算正方形面积(): pass def 计算圆形面积(): pass
写函数,传入一个参数n,返回n的阶乘
例如:cal(7) 计算7*6*5*4*3*2*1
编写装饰器,为多个函数加上认证的功能(用户的账号密码来源于文件),要求登录成功一次,后续的函数都无需再输入用户名和密码
通过生成器写一个日志调用方法, 支持以下功能
以上日志格式如下
2017-10-19 22:07:38 [1] test log db backup 3 2017-10-19 22:07:40 [2] user alex login success #注意:其中[1],[2]是指自日志方法第几次调用,每调用一次输出一条日志
代码结构如下
def logger(filename,channel='file'): """ 日志方法 :param filename: log filename :param channel: 输出的目的地,屏幕(terminal),文件(file),屏幕+文件(both) :return: """ ...your code... #调用 log_obj = logger(filename="web.log",channel='both') log_obj.__next__() log_obj.send('user alex login success')
用map来处理字符串列表,把列表中所有人都变成sb,比方alex_sb
name=['alex','wupeiqi','yuanhao','nezha']
用filter函数处理数字列表,将列表中所有的偶数筛选出来
num = [1,3,5,6,7,8]
如下,每个小字典的name对应股票名字,shares对应多少股,price对应股票的价格
portfolio = [ {'name': 'IBM', 'shares': 100, 'price': 91.1}, {'name': 'AAPL', 'shares': 50, 'price': 543.22}, {'name': 'FB', 'shares': 200, 'price': 21.09}, {'name': 'HPQ', 'shares': 35, 'price': 31.75}, {'name': 'YHOO', 'shares': 45, 'price': 16.35}, {'name': 'ACME', 'shares': 75, 'price': 115.65} ]
有名为poetry.txt的文件,其内容如下,请删除第三行;
poetry.txt
昔人已乘黄鹤去,此地空余黄鹤楼。 黄鹤一去不复返,白云千载空悠悠。 晴川历历汉阳树,芳草萋萋鹦鹉洲。 日暮乡关何处是?烟波江上使人愁。
username.txt
pizza alex egon
pizza,100001 alex, 100002 egon, 100003
alex li
a = [1,3,4,6,7,8,9,11,15,17,19,21,22,25,29,33,38,69,107] def binary_search(start,end,n,d_list): """ 每次把列表规模折半,查找一个数据最多只需要2的n次方 < len(d_list),是2的多少次方,就是最多查多少次。 假如列表长度为200,那最多只需查询8次(2**8次方) :param start: 查找的起始位置 :param end: 查找的结束位置 :param n: 要查找的值 :param d_list: 要找的列表 :return: """ if start < end: # 查找的范围[start:end]依然大于0个 mid = (start + end)//2 # 找到中间位置 if d_list[mid] > n: # 如果中间的这个值比要找的n大,代表要往d_list[mid]左边找 print("go left",start,mid,end,"--",d_list[start],d_list[mid],d_list[end-1]) binary_search(start,mid,n,d_list) elif d_list[mid] < n : # 要往右边找,继续折半 print("go right..",start,mid,end,"--",d_list[start],d_list[mid],d_list[end-1]) binary_search(mid+1,end,n,d_list) else: # 找到了 print("find:",d_list[mid],mid) else: # 假设start=9,end=9, 那d_list[9:9]已经取不到值了,在这种情况下,只能说明,要找的这个值不在这个列表里 print("cannot find %s in this data list" % n) binary_search(0, len(a), 22, a)