知识点:

  • print(i, end=’’) 输出结束时补充该参数指定的字符串,默认为换行符。
    python知识点 - 图1

  • 在python中,如果生成的变量不是关心的内容,则可以使用”_”来表示,声明此变量可忽略,不关心。

数字处理函数

  • round(),四舍六入五取偶

  • floor(),向下取整

  • ceil(),向上取整

  • min(),取最小值(可为列表)

  • Max(),取最大值

  • Pow(x,y),取平方,pow(5,2)取5的平方

  • 举例:
    Import math
    print(match.floor(2.5)) 返回为2
    Print(math.ceil(2.5)) 返回为3
    Print(round(2.51)) 返回2.5
    Print(round(2.55)) 返回2

python时间复杂度

  • 随着数据规模增大,效率下降

  • index和count方法都是O(n)

  • 理想中追求O(1),其次O(n),其次O(n的平方)

  • pop([index]),不指定索引默认从尾部弹出元素,从尾部效率最高,从其他位置pop会有效率问题。

  • 添加元素时建议使用append,不建议insert

  • 清楚元素时建议使用pop不添加索引方式,不建议remove

map函数应用

  • map()是python内置的高阶函数,接收一个函数f和一个list,并通过把函数f依次作用在list的每个元素上,并返回一个新list
  • 语法

    • map(function, iterable, …)
  • 返回值

    • Python2.x:返回列表
    • Python3.x:返回迭代器

1、当iterable只有一个时,函数func会作用于iterable中每个元素上,返回一个列表

  1. a = list(map(lambda x: x**2, range(5)))
  2. print(a)

2、当iterable多于一个时,iterable上同一位置上每一个元素传入一个接收多个参数的func函数,得到一个返回值,并把这个返回值存在列表中

a = list(map(lambda x, y: x + y, range(5), [1, 2, 3]))
print(a)
  • python2中,map对iterable长度不一致的情况,或对应位置上数据类型不一致的情况,会直接抛出异常

  • python3中,map对iterable长度不一致的情况,则以长度最短的对象对应位置依次传入func函数,但对应位置上数据类型不一致的情况,依然会抛出异常

示例

将下面列表中的a的值修改为2

[
  {'a': 1, 'b': 'a'}, 
  {'a': 1, 'b': 'b'}
]

方法一

l1 = [{'a': 1, 'b': 'a'}, {'a': 1, 'b': 'b'}]

# 使用函数的方式处理
def f(x):
    x['a'] = 2
    return x

print(list(map(f, l1)))

方法二

l1 = [{'a': 1, 'b': 'a'}, {'a': 1, 'b': 'b'}]

# 使用匿名函数
print(list(map(lambda x: dict(x, **{'a': 2}), l1)))