python容器

1.List:

>>>L=[1,2,3,4]

1.修改列表:给元素赋值

>>>L[0]=2  L=[2,2,3,4,]

2.删除元素

>>>del L[0]  L=[2,3,4]

3.给切片赋值

>>>L=list(‘Joker’)  L=['J', 'o', 'k', 'e', 'r']

列表方法

>>>L=[1,2,3,4]

1.append  方法append用于将一个对象附加到列表末尾。

>>>L.append(5)  >>>L  [1,2,3,4,5]

2.clear  方法clear就地清空列表的内容。

>>>L.clear()  >>>L   []

3.copy  方法 copy 复制列表。前面说过,常规复制只是将另一个名称关联到列表。

>>>L2=L.copy()  >>>L2   [1,2,3,4]

4.count  方法count计算指定的元素在列表中出现了多少次.

>>>L.count(1)  1

5.extend  方法extend让你能够同时将多个值附加到列表末尾,为此可将这些值组成的序列作为参数提供给方法extend。

>>>L2=[5,6,7]  >>>L.extend(L2)  [1,2,3,4,5,6,7]

6.index  方法index在列表中查找指定值第一次出现的索引。

>>>L.index(1)  0

7.insert  方法insert用于将一个对象插入列表。

>>>L.insert(0,0)  >>>L   [0,1,2,3,4]

8.pop  方法pop从列表中删除一个元素(末尾为最后一个元素),并返回这一元素。

>>>L.pop()  4  >>>L  [1,2,3]

9.remove  方法remove用于删除第一个为指定值的元素。

>>>L.remove(2)  >>>L  [1,3,4]

10.reverse  方法reverse按相反的顺序排列列表中的元素。

>>>L.reverse()  >>>L  [4,3,2,1]

11.sort  方法sort用于对列表就地排序。

>>>L.sort()  >>>L  [1,2,3,4]

12.高级排序  方法sort接受两个可选参数:key和reverse。

>>> x = ['aardvark', 'abalone', 'acme', 'add', 'aerate']

>>> x.sort(key=len)

>>> x

['add', 'acme', 'aerate', 'abalone', 'aardvark']

>>> x = [4, 6, 2, 1, 7, 9]

>>> x.sort(reverse=True)

>>> x

[9, 7, 6, 4, 2, 1]

2.tuple(不可改变的系列)

1.index

2.count

3.Dict

1.clear  方法clear删除所有的字典项

>>>d ={'age': 42, 'name': 'Gumby'}  

>>>d.clear()  

{}

2.copy  方法copy返回一个新字典,其包含的键-值对与原来的字典相同

>>> x = {'username': 'admin', 'machines': ['foo', 'bar', 'baz']}

>>> y = x.copy()

>>> y['username'] = 'mlh'

>>> y['machines'].remove('bar')

>>> y

{'username': 'mlh', 'machines': ['foo', 'baz']}

>>> x

{'username': 'admin', 'machines': ['foo', 'baz']}

Deepcopy

>>> from copy import deepcopy

>>> d = {}

>>> d['names'] = ['Alfred', 'Bertrand']

>>> c = d.copy()

>>> dc = deepcopy(d)

>>> d['names'].append('Clive')

>>> c

{'names': ['Alfred', 'Bertrand', 'Clive']}

>>> dc

{'names': ['Alfred', 'Bertrand']}

3.fromkeys  方法fromkeys创建一个新字典,其中包含指定的键,且每个键对应的值都是None。

>>> dict.fromkeys(['name', 'age'])

{'age': None, 'name': None}

4.get  方法get为访问字典项提供了宽松的环境。通常,如果你试图访问字典中没有的项,将引发错误

>>> d = {}

>>> print(d.get('name'))

None

5.items  方法items返回一个包含所有字典项的列表,其中每个元素都为(key, value)的形式。字典项在列表中的排列顺序不确定。

>>> d = {'title': 'Python Web Site', 'url': 'http://www.python.org', 'spam': 0}

>>> d.items()

dict_items([('url', 'http://www.python.org'), ('spam', 0), ('title', 'Python Web Site')])

6. keys  方法keys返回一个字典视图,其中包含指定字典中的键。

7. pop  方法pop可用于获取与指定键相关联的值,并将该键-值对从字典中删除。

>>> d = {'x': 1, 'y': 2}

>>> d.pop('x')

1

>>> d

{'y': 2}

8.popitem  方法popitem类似于list.pop,但list.pop弹出列表中的最后一个元素,而popitem随机地弹出一个字典项,因为字典项的顺序是不确定的.

>>> d = {'url': 'http://www.python.org', 'spam': 0, 'title': 'Python Web Site'}

>>> d.popitem()

('url', 'http://www.python.org')

>>> d

{'spam': 0, 'title': 'Python Web Site'}

9.setdefault  方法setdefault有点像get,因为它也获取与指定键相关联的值,但除此之外,setdefault还在字典不包含指定的键时,在字典中添加指定的键-值对。

>>> d = {}

>>> d.setdefault('name', 'N/A')

'N/A'

>>> d

{'name': 'N/A'}

>>> d['name'] = 'Gumby'

>>> d.setdefault('name', 'N/A')

'Gumby'

>>> d

{'name': 'Gumby'}

10.update  方法update使用一个字典中的项来更新另一个字典。

>>> d = {

... 'title': 'Python Web Site',

... 'url': 'http://www.python.org',

... 'changed': 'Mar 14 22:09:15 MET 2016'

... }

>>> x = {'title': 'Python Language Website'}

>>> d.update(x)

>>> d

{'url': 'http://www.python.org', 'changed':

'Mar 14 22:09:15 MET 2016', 'title': 'Python Language Website'}

11.values  方法values返回一个由字典中的值组成的字典视图。不同于方法keys,方法values返回的视图可能包含重复的值。

>>> d = {}

>>> d[1] = 1

>>> d[2] = 2

>>> d[3] = 3

>>> d[4] = 1

>>> d.values()

dict_values([1, 2, 3, 1])

 4.Str(不可改变)

所有标准序列操作(索引、切片、乘法、成员资格检查、长度、最小值和最大值)都适用于字符串。

1.center

方法center通过在两边添加填充字符(默认为空格)让字符串居中。

>>> "The Middle by Jimmy Eat World".center(39)

' The Middle by Jimmy Eat World '

>>> "The Middle by Jimmy Eat World".center(39, "*")

'*****The Middle by Jimmy Eat World*****'

2.find

方法find在字符串中查找子串。如果找到,就返回子串的第一个字符的索引,否则返回-1。

>>> title = "Monty Python's Flying Circus"

>>> title.find('Monty')

0

3.join

join是一个非常重要的字符串方法,其作用与split相反,用于合并序列的元素。

>>> seq = ['1', '2', '3', '4', '5']

>>>sep='+'

 

>>> sep.join(seq) # 合并一个字符串列表

'1+2+3+4+5'

4.lower(upper,title)

方法lower返回字符串的小写版本。

>>> 'Trondheim Hammer Dance'.lower()

'trondheim hammer dance'

 

5.replace

方法replace将指定子串都替换为另一个字符串,并返回替换后的结果。

>>> 'This is a test'.replace('is', 'eez')

'Theez eez a test'

6.split

split是一个非常重要的字符串方法,其作用与join相反,用于将字符串拆分为序列。

>>> '1+2+3+4+5'.split('+')

['1', '2', '3', '4', '5']

>>> '/usr/bin/env'.split('/')

['', 'usr', 'bin', 'env']

>>> 'Using the default'.split()

['Using', 'the', 'default']

7.strip

方法strip将字符串开头和末尾的空白(但不包括中间的空白)删除,并返回删除后的结果。

>>> ' internal whitespace is kept '.strip()

'internal whitespace is kept'

8.translate

方法translate与replace一样替换字符串的特定部分,但不同的是它只能进行单字符替换。这个方法的优势在于能够同时替换多个字符,因此效率比replace高。

>>> table = str.maketrans('cs', 'kz', ' ')

>>> 'this is an incredible test'.translate(table)

'thizizaninkredibletezt'

9.判断字符串是否满足特定的条件

很多字符串方法都以is打头,如isspace、isdigit和isupper,它们判断字符串是否具有特定

的性质(如包含的字符全为空白、数字或大写)。如果字符串具备特定的性质,这些方法就返回

True,否则返回False。

posted @ 2018-09-21 17:26  joker_hk  阅读(1963)  评论(0编辑  收藏  举报