十一、高级特性--列表生成式

1、列表生成式

(1)如何实现对列表中的每个值求平方,然后将结果组成一个新列表。

实现方法一,普通方法:

num = [1,2,3,4,5]
new =[] #创建一个空列表来存放计算后的结果
for i in num:
    new.append(i**2)
new

实现方法二,列表生成式实现:

num = [1,2,3,4,5]
[i**2 for i in num]

 (2)把两个列表中的值两两组合。

普通方法实现:

list1 = ["A","B","C"]
list2 = ["a","b","c"]
new = []
for m in list1:
    for n in list2:
        new.append(m+n)
new

 列表生成式实现如下:

list1 = ["A","B","C"]
list2 = ["a","b","c"]
[m+n for m in list1 for n in list2]

 上面的需求用普通方法要嵌套两个for循环,但是用列表生成式只要一行代码即可。如果数据量很小,那么for循环运行速度还行;如果数据量很大,那么for 循环嵌套太多程序,运行就会变得很慢。

2、map函数

map函数的表现形式是map(function,agrs),表示对序列args中的每个值进行function操作,最终得到一个结果序列。

a = map(lambda x,y:x+y,[1,2,3],[3,2,1])
a
for i in a:
        print(i)

 map函数生成的结果序列不会直接把全部结果显示出来,要想获取到结果需要for 循环遍历取出来。也可以用list方法,将结果值生成一个列表。

b = list(map(lambda x,y:x+y,[1,2,3],[3,2,1]))
b

3、模块

模块时升级版的函数,在一段程序中可以通过函数名多次调用函数,但是必须在定义函数的这段程序里面调用,如果换到其他程序里该函数就不起作用了。

模块之所以是升级版的函数模式因为在任意程序中都可以通过模块名去调用该模块对应的程序。

你要调用函数首先需要定义一个函数,同理,你要调用模块,首先需要导入模块,导入模块的方法主要有两种。

import module_name #直接import 具体的模块名
from modulel import module2 #从一个较大的模块中import一个较小的模块

数据分析领域用的比较多的三个模块分别是NumPy、Panda、matplotlib,Python中海油很多类似的模块,正是因为这类模块的存在,使得Python变得很简单,受到越来越多人的欢迎。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值