元素分类与 collections

1.元素分类:
#[11,22,33,44,55,66,77,88,99,90]
#将所有大于66的值保存至字典的一个key中
#将小于66的保存至第二个key中
#{‘k1‘:[77,88,99,90],‘k2‘:[11,22,33,44,55,66]}
li = [11,22,33,44,55,66,77,88,99,90]
dic = {‘k1‘:[],‘k2‘:[]}
for i in li:
    if i > 66:
        dic[‘k2‘].append(i)
    else:
        dic[‘k1‘].append(i)
dic1 = {}
#key不确定的情况洗
for i in li:
    if i > 66:
        if ‘k2‘ in dic1.keys():
            dic[‘k2‘].append(i)
        else:
            dic1[‘k2‘] = [i,]
    else:
         if ‘k1‘ in dic1.keys():
            dic[‘k1‘].append(i)
         else:
            dic[‘k1‘]= [i,]
#1.txt
#yys|123|1
#eddy|123|1
#linux|123|1
‘‘‘dic = {
        ‘yys‘:[123,1]
        ‘eddy‘:[123,1]
        ‘linux‘:[123,1]
}
‘‘‘
dic = {}
with open(‘1.txt‘,‘r‘) as file:
    for i in  file.readlines():
        line_list = i.strip().split(‘|‘)#每一行做为列表,把|分割的元素做为每一个元素
        #[‘yys‘,‘123‘,‘1‘]
        dic[line_list[0]] = line_list[1:]
print dic

2.collections
    计数器
        #计算元素出现了多少次
        c1 = collections.Counter(‘aaaccdd‘)
        c2 = collections.Counter(‘aaacddee‘)
        Counter({‘a‘: 3, ‘c‘: 2, ‘d‘: 2})
        Counter({‘a‘: 3, ‘e‘: 2, ‘d‘: 2, ‘c‘: 1})
        #统计前几名3表示前三名
        print c1.most_common(3)
        [(‘a‘, 3), (‘c‘, 2), (‘d‘, 2)]
        #update两个统计叠加
        c1.update(c2)
        Counter({‘a‘: 6, ‘d‘: 4, ‘c‘: 3, ‘e‘: 2})
        #打印元素
        c1 = collections.Counter(‘aaaccdd‘)
        for i in c1.elements():
            print i
        a
        a
        a
        c
        c
        d
        d
        #统计列表
        li = [11,22,33,44,55,11,1,22,33]
        c1 = collections.Counter(li)
        print c1
        Counter({33: 2, 11: 2, 22: 2, 1: 1, 44: 1, 55: 1})
    有序字典
        dic = {‘k1‘:123,‘k2‘:123,‘k3‘:12}
        dic1 = collections.OrderedDict()
        dic1[‘k1‘] = 1
        dic1[‘k2‘] = 1
        dic1[‘k3‘] = 1   
        {‘k3‘: 12, ‘k2‘: 123, ‘k1‘: 123}
        OrderedDict([(‘k1‘, 1), (‘k2‘, 1), (‘k3‘, 1)])
    默认字典
        原生字典中dic{‘k1‘:None}
        if ‘k1‘ in dic.keys():
            dic[‘k1‘].append(1)
        else:
            dic[‘k1‘] = [] 
        得到dic{‘k1‘:[]}
        默认字典中
        my_dic = collections.defaultdict(list)
        就能得到 my_dic{‘k1‘:[]}
        为字典中value设置一个默认类型可以是字典、列表、元组
    可命名元组
        #创建一个扩展的元组类,mytuple,除了元组本身的使用方法还扩展了自己定义的方法
        mytuple = collections.namedtuple(‘mytuple‘,[‘x‘,‘y‘])
        new = mytuple(1,2)
        print new
        print new.x
        print new.y  
        mytuple(x=1, y=2)  
        1
        2
    双向队列
        #双向队列
        q = collections.deque()
        #右边添加
        q.append(1)
        q.append(2)
        q.append(3)
        q.append(4)
        #左边添加
        q.appendleft(5)
        #右边删除
        q.pop()
        #左边删除
        q.popleft()
时间: 2024-10-17 16:36:21

元素分类与 collections的相关文章

html标签元素分类

元素分类 html中的标签元素大体分为三种不同的类型:块状元素.内联元素(又叫行内元素)和内联块状元素. 常用的块状元素有: <div>.<p>.<h1>...<h6>.<ol>.<ul>.<dl>.<table>.<address>.<blockquote> .<form> 常用的内联元素有: <a>.<span>.<br>.<i&

块状元素居中、元素分类(块状,内联,内联块状)、内联转块状

块状元素中的文字.图片居中显示: CSS设置:text-align:center <style type="text/css"> div{text-align:center;} </style> </head> <body> <div><img src="http://img.mukewang.com/52b4113500018cf102000200.jpg" ></div> 如图所

Web前端开发基础 第四课(CSS元素分类)

元素分类 在讲解CSS布局之前,我们需要提前知道一些知识,在CSS中,html中的标签元素大体被分为三种不同的类型:块状元素.内联元素(又叫行内元素)和内联块状元素. 常用的块状元素有: <div>.<p>.<h1>...<h6>.<ol>.<ul>.<dl>.<table>.<address>.<blockquote> .<form> 常用的内联元素有: <a>

HTML5 元素分类

HTML5元素分类:结构性元素.级块性元素.行内语义性元素.交互性元素. 目的:使文档的结构更加清晰明确: 增加新功能. 结构性元素:负责Web的上下文结构的定义,确保HTML文档的完整性. 1.1 section(给内容分段):在web页面应用中,该元素可以用于区域的章节表述. section 元素用于对网站或应用中页面上的内容进行分区,关注内容的独立性:一个section元素通常由标题及内容组成:section元素包含的内容可以单独存储到数据库中或输出到word文档中 1.2 header(

html的标签元素分类

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>HTML元素分类</title>    <style type="text/css">    /*浏览器默认样式(外边距和内边距)初始化(所有)*/       *{       margin: 0;       pa

从a标签为什么不能包含div标签-了解HTML5元素分类与内容模型

我们知道按新的 HTML 规范,已经不按 inline 和 block 来区分元素类型了.所以我们在a标签里面使用div标签时候会发现a标签并不能通过改变css盒子模型的方式将div元素包含. 元素分类 HTML5中,元素主要分为7类: Metadata Flow Sectioning Heading Phrasing Embedded Interactive 这些分类集合互相之间也存在一定的交集(一个元素可以同时属于多个分类),其交集关系呈现为: 需要注意的是,HTML5中的这种元素分类与in

PAT1075-----链表元素分类 (25分)

1075 链表元素分类 (25分) 输入样例: 00100 9 10 23333 10 27777 00000 0 99999 00100 18 12309 68237 -6 23333 33218 -4 00000 48652 -2 -1 99999 5 68237 27777 11 48652 12309 7 33218 输出样例: 33218 -4 68237 68237 -6 48652 48652 -2 12309 12309 7 00000 00000 0 99999 99999 5

css元素分类及区别

元素是文档结构的基础,在CSS中,每个元素生成了一个包含了元素内容的框(box,也译为“盒子”).但是不同的元素显示的方式会有所不同,例如<div>和<span>就不同,而<strong>和<p>也不一样.在文档类型定义(DTD)中对不同的元素规定了不同的类型,这也是DTD对文档之所以重要的原因之一. 替换和不可替换元素 从元素本身的特点来讲,可以分为替换和不可替换元素. a) 替换元素 替换元素就是浏览器根据元素的标签和属性,来决定元素的具体显示内容.例如

了解HTML 元素分类

HTML中包含大量的标签, 这些标签在我们使用中发现会有小小的差别, 有的标签用了之后不会有太大的布局变化, 只是语义化, 而有的标签却会重起一行, 相当于自己回车了一次, 这就是不同标签元素的分类不同造成的结果. 块级元素 在HTML中, <div>, <p>, <h1>, <form>, <ul>, <ol>, <li>等标签就是块级元素, 每个块级元素一般都具有相同的特点. 1, 每个块级元素都从新的一行开始, 并且