python 当中的zip( )函数到底是干嘛的?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 当中的zip( )函数到底是干嘛的?相关的知识,希望对你有一定的参考价值。
这个可以理解为拉链,将两个list拉到一起来,每个对应元素做一定操作后,合并成一个list.比如:
zip([1,2,3],[\'a\',\'b\',\'c\'])
结果是
[(1, \'a\'), (2, \'b\'), (3, \'c\')] 参考技术A zip([1,2,3],['a','b','c'])
结果是
[(1, 'a'), (2, 'b'), (3, 'c')]
就是依次取出每一个数组的元素,然后组合
操作数可以更多
zip([1,2,3],['a','b','c'],[4,5,6])也是可以的
如果元素长度不一致会被砍到一样长
另外zip(*list)也就是数组前面带个星号,是上述操作的逆操作
zip(*[(1, 'a'), (2, 'b'), (3, 'c')])的结果是[1,2,3],['a','b','c'] 参考技术B 估计楼主以为是压缩算法吧,呵呵,这个蛮有迷惑性的,其实这个很好理解,就是用的地方不多,如果你学习过数据矩阵的话,也许不会问这个问题了。
楼主想想一下小学升国旗的时候,小学生门一排排,一列列的整齐地站着,当我们从列来看这些学生的时候,就相当于以每排学生作为一个集合,然后以这些集合组成的集合传递给了zip函数。不知道楼主看懂没有 参考技术C 这个可以理解为拉链,将两个list拉到一起来,每个对应元素做一定操作后,合并成一个list.
比如:
zip([1,2,3],['a','b','c'])
结果是
[(1, 'a'), (2, 'b'), (3, 'c')]
子墨掩码到底是干嘛的?
前言
基本上每台计算机的网卡配置里都有这么一项子墨掩码的配置,子墨掩码的值一般都是255.255.255.0
,那么这个玩意到底是干嘛的呢?今天我们就来揭开它神秘的面纱!
IP分配
没错 ,子墨掩码的作用就是用来分配ip地址的,我们先将子墨掩码中的四位数字转换成二进制
255.255.255.0
转为二进制后 如下所示
11111111 11111111 11111111 000000
其实很简单,1就代表不变的意思,这四组数字就分别代表了IP的四组数字,比如我们路由器的网关是192.168.100.1
,那么前三组数字192.167.100
就不会变,会变的只有最后组数字,也就是说,当网关进行IP分配时,会在2 ~ 254之间进行分配,也就是会给计算机分配 192.168.100.2 ~ 192.168.100.254
之间的ip地址,有200多个IP可供分配,想想你家有这么多 台电脑吗?普通的家庭里面使用绰绰有余了;
有的童鞋可能要问了,怎么是2 ~ 254
呢,那255这个地址用来干嘛了?255其实是用来广播的哈
子墨掩码的另一种表现形式
除了255.255.255.0
之外,我们还会看到 这种形式的子墨掩码: 192.168.100.1/16
,前面的ip地址都知道,后面的/16
是什么鬼?为了搞清楚这个问题,我们需要用到子墨掩码计算器,百度一搜就有了,这里就不提供了,计算后如下图
大家可以看到, 这个16
计算出来的掩码是255.255.0.0
,也就是说它的范围更广,仔细看红圈的部分,也就是说它的范围是192.168.0.1 ~ 192.168.255.254
之间,这么一算254 * 254
,就有6万多个IP可以使用了,你想想,有几个大公司的人数超过6万的;这个范围给一个公司的人用也就足够了;
/8
的情况
另外,除了/16
之外,还有/8
的,8
的 范围就更广了, 只有最前面192
是不变的,那么ip范围就是 255 * 255 * 254
,这个数字大家可以计算一下是多少个;
/24
的情况
除此之外,还有/24
的,看下图我们是不是可以看到,跟我们文章的第一张图是一样的,没错啦,就是最开始的255.255.255.0
,它的范围是1 ~ 254
之间 ,一般情况下,192.168.100.1
是路由器使用的网关,所以有效范围也是192.168.100.2 ~ 192.168.100.254
完
以上是关于python 当中的zip( )函数到底是干嘛的?的主要内容,如果未能解决你的问题,请参考以下文章