zoukankan      html  css  js  c++  java
  • 博客整理day14 匿名函数/内置函数/异常处理/面对象

    Python D14 匿名函数/内置函数/异常处理/面对象

    匿名函数

    ​ 没有函数名的函数,一般与内置方法一起用

    salary_dict = {
        'nick': 3000,
        'jason': 100000,
        'tank': 5000,
        'sean': 2000
    }
    
    # max()、  输出工资最高的名字
    
    print(max(salary_dict, key=lambda name: salary_dict[name]))
    
    # sorted()、  按工资高低排序
    
    print(sorted(salary_dict,key= lambda name : salary_dict[name],reverse = True))
    
    # filter()、  筛选工资大于3K的人
    
    print(list(filter(lambda name : salary_dict[name]>3000,salary_dict)))
    

    内置函数

    # bytes 解码字符
    res = bytes('哈喽',encoding='utf8')
    print(res)
    
    # chr/ord  ASCII和对应字符的转换
    print(chr(65))
    print(ord('A'))
    
    # divmod  取商取余
    print(divmod(9,3))
    
    # enumerate  带索引的迭代
    l=['a','b','c']
    for k,v in enumerate(l):
        print( k,v)
    
    # eval  把字符串翻译成数据类型
    lis = '[1,3,5]'
    lis_eval = eval(lis)
    print(lis_eval)
    
    # hash  是否可哈希
    print(hash(1))
    
    
    # 了解
    
    # abs
    print(abs(-1))
    # all# 可迭代对象内的元素全部为True则为True
    print(all([1, 2, 3, 3]))
    # any
    print(any([0, 0, ]))
    # bin/oct/hex
    print(bin(123))
    print(oct(123))
    print(hex(123))
    # dir: 列出模块的所有方法
    # import time
    #
    # print(dir(time))
    # frozenset: 不可变化的集合,类似于元组
    s = frozenset({1, 2, 3})
    print(s)
    
    # gloabals/locals
    # print(globals())  # 列出所有全局变量
    # print('locals():', locals())
    
    def func():
        s = 's1'
        print(globals())  # 列出所有全局变量
        print('locals():', locals())  # 列出当前位置所有变量
    
    func()
    
    # pow
    print(pow(2, 2))
    
    # round
    print(round(10.333))
    
    # slice
    s = slice(1, 5, 2)  # 1start,5stop,2step
    lt = [1, 2, 3, 4, 5, 6, 7]
    print(lt[s])
    print(lt[1:5:2])
    
    # # sum
    print(sum([1, 2, 3, 4, 5]))
    # __import__  # 通过字符串导入模块
    # import 'time'
    
    time = __import__('time')
    print(time.time())
    

    异常处理

    dic = {'a': 1}
    
    try:
    
        print(dic['b'])  # KeyError
        1 / int(num)  # 报错之后,不运行下面的代码
    
    except Exception as e:  # 万能异常,只要有错误,就捕捉
        print(e)  # 错误的描述信息
    finally:  # 无论你报不报错,都执行这一行
        print('finally')
        
    # 异常捕捉只能捕捉逻辑错误
    

    面向对象

    ​ 面向过程编程,核心是编程二字,过程指的是解决问题的步骤,即先干什么、后干什么、再干什么、然后干什么

    ​ 优点:逻辑非常清晰,复杂的问题流程化,进而简单化。

    ​ 缺点:扩展性差。

  • 相关阅读:
    398. Random Pick Index
    382. Linked List Random Node
    645. Set Mismatch
    174. Dungeon Game
    264. Ugly Number II
    115. Distinct Subsequences
    372. Super Pow
    LeetCode 242 有效的字母异位词
    LeetCode 78 子集
    LeetCode 404 左叶子之和
  • 原文地址:https://www.cnblogs.com/samoo/p/11585728.html
Copyright © 2011-2022 走看看