python2

python s12 day2

 

入门知识拾遗

http://www.cnblogs.com/wupeiqi/articles/4906230.html 

基本数据类型

 

注:查看对象相关成员 var,type,dir

一、整数

如: 18、73、84

每一个整数都具备如下功能:

 int

二、长整型

可能如:2147483649、9223372036854775807

每个长整型都具备如下功能:

 long

三、浮点型

如:3.14、2.88

每个浮点型都具备如下功能:

 float

四、字符串

如:'wupeiqi'、'alex'

每个字符串都具备如下功能:

 str

注意:3.x  里translate方法变成只有一个参数,2.x里有2个参数哈。

五、列表

如:[11,22,33]、['wupeiqi', 'alex']

每个列表都具备如下功能:

 list

六、元组

如:(11,22,33)、('wupeiqi', 'alex')

每个元组都具备如下功能:

 tuple

七、字典

如:{'name': 'wupeiqi', 'age': 18} 、{'host': '2.2.2.2', 'port': 80]}

ps:循环时,默认循环key

每个字典都具备如下功能:

 dict

练习:

1
2
有如下值集合 [11,22,33,44,55,66,77,88,99,90...],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中。
即: {'k1': 大于66 'k2': 小于66}

 八、set集合

set是一个无序且不重复的元素集合

 set

练习:寻找差异

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 数据库中原有
old_dict = {
    "#1":{ 'hostname':c1, 'cpu_count'2'mem_capicity'80 },
    "#2":{ 'hostname':c1, 'cpu_count'2'mem_capicity'80 }
    "#3":{ 'hostname':c1, 'cpu_count'2'mem_capicity'80 }
}
  
# cmdb 新汇报的数据
new_dict = {
    "#1":{ 'hostname':c1, 'cpu_count'2'mem_capicity'800 },
    "#3":{ 'hostname':c1, 'cpu_count'2'mem_capicity'80 }
    "#4":{ 'hostname':c2, 'cpu_count'2'mem_capicity'80 }
}
  
需要删除:?
需要新建:?
需要更新:? 注意:无需考虑内部元素是否改变,只要原来存在,新汇报也存在,就是需要更新
 demo

collections系列

一、计数器(counter)

Counter是对字典类型的补充,用于追踪值的出现次数。

ps:具备字典的所有功能 + 自己的功能

1
2
3
= Counter('abcdeabcdabcaba')
print c
输出:Counter({'a'5'b'4'c'3'd'2'e'1})
 Counter

二、有序字典(orderedDict )

orderdDict是对字典类型的补充,他记住了字典元素添加的顺序

 OrderedDict

三、默认字典(defaultdict) 

defaultdict是对字典的类型的补充,他默认给字典的值设置了一个类型。

 defaultdict

练习:

1
2
有如下值集合 [11,22,33,44,55,66,77,88,99,90...],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中。
即: {'k1': 大于66 'k2': 小于66}
 原生字典
 默认字典

四、可命名元组(namedtuple) 

根据nametuple可以创建一个包含tuple所有功能以及其他功能的类型。

1
2
3
import collections
  
Mytuple = collections.namedtuple('Mytuple',['x''y''z'])  
 Mytuple

五、双向队列(deque)

一个线程安全的双向队列

 deque

注:既然有双向队列,也有单项队列(先进先出 FIFO )

 Queue.Queue

posted on 2017-07-23 21:50  zllqaz  阅读(88)  评论(0)    收藏  举报

导航