美文网首页
Python语法和注意点

Python语法和注意点

作者: wangyu2488 | 来源:发表于2019-12-22 14:03 被阅读0次

    2019年11月17日

    一.元组 ()不可以修改 tuple

    a = (21, 32, 43, 45)
    

    二.列表 [] 可以修改 list 可以重复

    n_list = []
    for x in range(10):
        if x % 2 == 0:
            n_list.append(x ** 2)
    print(n_list)
    

    三.集合 {} set 不可重复

    n_set = {x for x in range(100) if x % 2 == 0 if x % 5 == 0}
    print(n_set)
    

    四.字典 {} dict { key value}

    2019年11月27日

    1.字符串格式化

    image.png
    print("a | b = {0:b}".format(a | b))  # 0b11111110
    

    2.终端命令参数输入


    image.png

    3.三元运算符

    result = '及格' if score >= 60 else '不及格'
    

    4.列表推导式

    n_list = [x for x in range(100) if x % 2 == 0 if x % 5 == 0]
    
    # 字典 推导式
    input_dict = {'one': 1, 'two': 2, 'three': 3, 'four': 4}
    
    output_dict = {k: v for k, v in input_dict.items() if v % 2 == 0}
    print(output_dict)
    
    keys = [k for k, v in input_dict.items() if v % 2 == 0]
    print(keys)
    

    5.生成器 yield

    # 生成器  yield   不直接返回所有数据,而是返回一个生成器对象(一种可迭代的对象)  __next__()
    def square(num):
        for i in range(1, num + 1):
            yield i * i
    
    for i in square(5):
        print(i, end=' ')
    

    二.Lambda表达式就是 函数类型

    1.未使用之前

    # 函数类型返回
    def calculate_fun(opr):
        # 定义相加函数
        def add(a, b):
            return a + b
        # 定义相减函数
        def sub(a, b):
            return a - b
        if opr == '+':
            return add
        else:
            return sub
    
    f1 = calculate_fun('+')
    f2 = calculate_fun('-')
    
    print(type(f1))
    
    print("10 + 5 = {0}".format(f1(10, 5)))
    print("10 - 5 = {0}".format(f2(10, 5)))
    

    2.使用Lambda表达式 Lambda体 只能有一条语句

    def calculate_fun(opr):
        if opr == '+':
            return lambda a, b: (a + b)
        else:
            return lambda a, b: (a - b)
    
    f1 = calculate_fun('+')
    f2 = calculate_fun('-')
    
    print(type(f1))
    
    print("10 + 5 = {0}".format(f1(10, 5)))
    print("10 - 5 = {0}".format(f2(10, 5)))
    

    3.三大基础函数

    from functools import reduce
    
    # 1.filter()  过滤
    users = ['Tony', 'Tom', 'Ben', 'Alex']
    
    users_filter = filter(lambda u: u.startswith('T'), users)
    print(list(users_filter))
    
    number_list = range(1, 11)
    nmber_filter = filter(lambda it: it % 2 == 0, number_list)
    print(list(nmber_filter))
    
    # 2.map()  映射
    users_map = map(lambda u: u.lower(), users)
    print(list(users_map))
    
    # users_map = map(lambda u: u.lower(), users_filter)
    users_map = map(lambda u: u.lower(), filter(lambda u: u.startswith('T'), users))
    
    print(list(users_map))
    
    # 3.reduce()  聚合
    a = (1, 2, 3, 4)
    a_reduce = reduce(lambda acc, i: acc + i, a)  # 10
    # a_reduce = reduce(lambda acc, i: acc + i, a, 2)  # 12
    print(a_reduce)
    

    如果您发现本文对你有所帮助,如果您认为其他人也可能受益,请把它分享出去。

    相关文章

      网友评论

          本文标题:Python语法和注意点

          本文链接:https://www.haomeiwen.com/subject/rhsonctx.html