罚函数法python代码 罚函数法优缺点( 二 )


有没有发现,第二次输出 b 中的元素时,发现变成空了 。原因是 map() 函数返回的是一个迭代器,并用对返回结果使用了 yield,这样做的目的在于节省内存 。举个例子:
执行结果为:
这里如果不用 yield,那么在列表中的元素非常大时,将会全部装入内存,这是非常浪费内存的,同时也会降低效率 。
3、正则表达式中 compile 是否多此一举?
比如现在有个需求,对于文本中国,用正则匹配出标签里面的“中国”,其中 class 的类名是不确定的 。有两种方法 , 代码如下:
这里为什么要用 compile 多写两行代码呢? 原因是 compile 将正则表达式编译成一个对象,加快速度,并重复使用 。
4、[[1,2],[3,4],[5,6]]一行代码展开该列表,得出[1,2,3,4,5,6]
5、一行代码将字符串 "-" 插入到 "abcdefg"中每个字符的中间
这里也建议多使用 os.path.join() 来拼接操作系统的文件路径 。
6、zip 函数
zip() 函数在运算时,会以一个或多个序列(可迭代对象)做为参数,返回一个元组的列表 。同时将这些序列中并排的元素配对 。zip() 参数可以接受任何类型的序列,同时也可以有两个以上的参数;当传入参数的长度不同时,zip 能自动以最短序列长度为准进行截取,获得元组 。
罚函数法python代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于罚函数法优缺点、罚函数法python代码的信息别忘了在本站进行查找喔 。

推荐阅读