1.今日内容

  1. 内置函数I
  2. 匿名函数
  3. 内置函数II

2.具体内容

  1. 内置函数I

    内置函数:内置的函数,python中的内置函数有68种,13种是在面向对象

    1、eval exce 去掉字符串两边的引号,还原本身(慎用)

    s1 = "{1:'dog'}"
    s2 = '1+3'
    #eval 剥取字符串的外衣,返回里面的本质
    ret = eval(s1)
    print(ret,type(ret))#{1: 'dog'} <class 'dict'>
    print(eval(s2)) #4
    #exec 代码流,过程
    s3 = '''
    for i in range(3):
     print(i)
    '''
    exec(s3)#1 2 3

    2、hash() 获取对象的哈希值

    print(hash(123))
    print(hash('qw'))

    3、 help() 使用说明

    print(help(str.count))

    4、 callable ** 判断对象是否可以调用

    def a():
      pass
    b = 2
    print(callable(a))#T
    print(callable(b))#F

    5、int() ** 取整,将字符串转换成整数

    print(int('321'))#321
    print(int(3.14))#3

    6、float() 将整数和字符串转换成浮点型

    print(float(321))#321.0
    print(float('321'))#321.0

    7、complex
    8、 bin() 将十进制转化成二进制
    9、oct() 将十进制转化成八进制
    10、hex()将十进制转化成十六进制

    print(bin(2))#0b10
    print(oct(8))#0o10
    print(hex(16))#0x10

    11、divmod() 计算除数与被除数的结果,返回一个包含商和余数的元组(分页用到)

    print(divmod(17,2))#(8,1)

    12、 round()保留小数的有次位置,(默认取整)

    print(round(3.21))#3
    print(round(3.1415926,3))#3.142
    

    13、pow() 求x**y此幂

    三个参数为x**y的结果对z取余

    print(pow(3,3))#27
    print(pow(3,3,2))#1
    

    14、ord() 输入字符寻找unicode的位置
    15、chr() ** 输入位置数字寻找对应的字符

    print(ord('a'))#97
    print(chr(97))#a
    

    16、repr ** 原形毕露

    print(repr('dog'))#'dog'
    

    17、all any **

    l1 = [1,2,[1,],{1:dog},(1,)]
    l2 = ['',{},(),[]]
    print(all(l1))#T
    print(any(l2))#F
    
  2. 匿名函数

    #匿名函数:没有名字的函数
    #匿名函数只能构建简单的函数,一句话函数
    #常用来与内置函数结合使用
    def func(x,y):
      return x+y
    #匿名函数的构建
    func1 = lambda x,y:x+y
    print(func1(1,3))
    #接收一个可切片的数据,返回索引为 0与2的对应的元素(元组形式)
    print(lambda x : (x[0],x[2]))
    #接收两个int参数,将较大的数据返回
    print(lambda x,y : x if x>y else y)
    
  3. 内置函数II***

    1、 print()参数sep ,end

    print(self,*args,sep=' ',end='\n',file=None)
    #sep设定分割符
    #end默认换行,可以打印一行
    print(1,2,3,sep='|')#1|2|3
    
    print(1,2,end=' ')
    print(3,4)
    #1 2 3 4
    

    2、 list()构建列表

    l1 = list('qwer')
    print(l1)#['q','w','e','r']
    

    3、dict()创建字典

    #1.
    dic = dict(one=1,two=2)
    print(dic)#{'one':1,'two':2}
    #2.字典推导式
    print(i:1 for i in range(3))
    #3.
    dic = {'one':1,'two':2}
    #formkeys()
    

    4、abs()取绝对值
    5、sum()求和,可以设置初始值

    print(abs(-9))#9
    #sum(iterable)
    sum([1,2,3])#6
    sum([1,2,3],100)#106
    

    6、 min()取小,可以加功能,参数key
    7、 max()取大,可以加功能,参数key

    print(min([1,2,3,4]))#1
    #加功能,通过设置key去使用min
    l1 = [('alex', 73, 170), ('太白', 18, 185), ('武大', 35, 159),]
    #min 自动的将可迭代对象的每一个元素作为实参传给i
    def func(x):
      return x[1]
    print(min(l1,key=func))
    print(min(l1,key=lambda i:i[1]))
    
    # 练习:
    dic = {'a':3,'b':2,'c':1}
    # 将dic值最小的键返回
    print(min(dic,key=lambda i :dic[i]))#c
    # 将dic值最小的值返回
    print(dic[min(dic,key=lambda i :dic[i])])#1
    
    dic = {'A':['李业', 67],'b': ['怼哥', 95],'c': ['冯垚', 85]}
    # 将成绩最低的从属于的那个列表返回
    print(dic[min(dic,key=i:dic[i][1])])
    # 将成绩最低的分数返回
    print(dic[min(dic,key=i:dic[i][1])][1])#67
    
    max()与min 相同
    

    8、 reversed() 对一个可迭代对象进行翻转,返回一个迭代器

    s1 = 'qwe'
    print(reversed(s1))# <reversed object at 0x00000167DE269748>
    for i in reversed(s1):
      print(i)
    

    9、 bytes()

    s1 = '太白'
    #方法一
    print(s1.encode('utf-8'))
    #方法二
    print(bytes(s1,encoding='utf-8'))
    
    #  解码
    b1 = b'\xe5\xa4\xaa\xe7\x99\xbd'
    #方法一
    print(s1.decoding('utf-8'))
    print(str(s1,encoding='utf-8'))
    
12-30 18:44
查看更多