zoukankan      html  css  js  c++  java
  • python第十一课

    #2.写函数,检查获取伟入列表或元祖对象的所有奇数位素引对应的元素,并将其作为新列表返回给调用者.
    # def func(l):
    # return l[1::2]#切片
    # print(func([1,2,3,4,5]))
    #3.写函数,判断用户传入的值(字符串,列表,元祖)长度是否大于5
    # def func(x):
    # return len(x)>5
    # if func('abcd'):
    # print('长度确实大于5')
    #4,写函数,检查传入列表的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者.
    # def func(l):
    # if len(l)>2:
    # return l[:2]
    # p=func([1,2,3,4])
    # print(p)
    #5,写函数,计算传入字符串中[数字],[字母],[空格]以及[其他]的个数,并返回结果
    # def func(s): #'skghfoiw
    # # num=0 # 计算数字的个数
    # # alpha=0 #字母
    # # space=0 #空格
    # # other=0 #其它
    # dic = {'num':0,'alpha':0,'space':0,'other':0}
    # for i in s:
    # if i.isdigit():
    # dic['num']+=1
    # elif i.isalpha():
    # dic['alpha']+=1
    # elif i.isspace():
    # dic['space']+=1
    # else:
    # dic['other']+=1
    # return dic
    # print(func('+0-0sfk3j5l8s;f7j;aslfks'))

    #6.写函数,检查用户传入的对象(字符串,列表,元祖)的每一个元素是否含有空内容,并返回结果
    # def func(x):
    # if type(x) is str and x:
    # for i in x:
    # if i == ' ':
    # return Ture
    # elif x and type(x) is list or type(x) is tuple:
    # for i in x:
    # if not i:
    # return True
    # elif not x:
    # return True
    # print(func([]))

    #7,写函数,检查传入字典的每一个value的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者
    # def func(dic):
    # for k in dic:
    # if len(dic[k]) > 2:
    # dic[k]=dic[k][:2]
    # return dic
    # dic={"k1":"v1v1","k2":[11,22,33,44]}
    # print(func(dic))

    #8.写函数,接收两个数字参数,返回比较大的那个数字
    # def func(a,b):
    # if a>b:
    # return a
    # else:
    # return b
    # print(func(1,5))
    # def func(a,b):
    # return a if a>b else b
    # print(func(5,1))
    #三元运算
    # a=1
    # b=5
    # c=a if a>b else b #三元运算
    # print(c)
    #变量=条件返回True的结果 if 条件 else 条件返回Falese的结果
    #必须要有结果
    #必须要有if和else
    #只能是简单的情况

    #9.写函数,用户传入修改的文件名,与要修改的内容,执行函数,完成整个文件的批量修改操作
    def func(filename,old,new):
    with open(filename,encoding='utf-8') as f,open('%s.bak'%filename,'w',encoding='utf-8')as f2:
    for line in f:
    if old in line:
    line=line.replace(old,new)
    f2.write(line)
    import os
    os.remove(filename)
    os.rename('%s.bak'%filename,filename)

    #装饰器形成的过程:最简单的装饰器 有返回值的 有一个参数 万能参数
    #装饰器的作用
    #原则:开方封闭原则
    #装饰器的固定模式
    import time
    # print(time.time())#获取当前时间
    # time.sleep(10)#让程序在执行到这个位置的时候停一会儿
    # print('龚启丽')
    #
    # def func():#被装饰的函数
    # time.sleep(0.01)
    # print('启丽我爱你')
    #
    # def timmer(f):#装饰器函数
    # def inner():
    # start = time.time()
    # f() #装饰器函数
    # end = time.time()
    # print(end - start)
    # return inner
    # @timmer #语法糖
    # func=timmer(func)
    # func()
    #装饰器的作用--不想修改函数的调用方式,但是还想在原来的函数前后添加功能
    #timer就是一个装饰器函数,只是对一个函数,有些装饰作用

    #原则:开放封闭原则
    #开放:对扩展是开放的
    #封闭:对修改是封闭的
    #封版

    #装饰带参数函数的装饰器
    # def timmer(f):
    # def inner(*args,**kwargs):
    # #(1,2)/(1)
    # start=time.time()
    # ret=f(*args,**kwargs) #f(1,2)
    # end=time.time()
    # print(end-start)
    # return ret
    # return inner
    # @timmer #语法糖 @装饰器函数名
    # def func(a,b): #装饰器的函数
    # time.sleep(0.01)
    # print('启丽我爱你',a,b)
    # return '启丽'
    # @timmer #语法糖 @装饰器函数名
    # def func1(a): #被装饰的函数
    # time.sleep(0.01)
    # print('启丽我爱你',a,b)
    # return '启丽'
    # #func=timmer(func)
    # ret=func(1,2) #inner()
    # ret=func(1,b=2) #inner()
    # print(set)


    # def wrapper(f): #装饰器函数: wrapper装饰的名字,f是被装饰的函数
    # def inner(*args,**kwargs):
    # '在被装饰函数之前要做的事'
    # ret=f(*args,**kwargs) #被装饰的函数
    # #在被装饰函数之后要作的事
    # return ret
    # return inner
    # @wrapper #语法糖 @装饰器函数名 func=wrarpper(func)
    # def func(a,b): #装饰器的函数
    # time.sleep(0.01)
    # print('启丽我爱你',a,b)
    # return '启丽'

    # def wrapper():
    # def inner():
    # pass
    # return inner
    #
    # def wrapper(func): #qqxing
    # def inner(*args,**kwargs):
    # ret=func(*args,**kwargs) #被装饰的函数
    # return ret
    # return inner
    # @wrapper #qqxing=wrappr(qqxing)
    # def qqxing():
    # print(123)
    #
    # ret=qqxing() #inner
  • 相关阅读:
    厂商前缀
    文本阴影和边框阴影
    2D转换
    overflow属性
    margin属性
    CSS圆角边框
    浮动定位
    文档流定位
    position属性
    选择器二
  • 原文地址:https://www.cnblogs.com/huangjianfeng/p/11297239.html
Copyright © 2011-2022 走看看