专栏名称: 马哥Linux运维
马哥linux致力于linux运维培训,连续多年排名第一,订阅者可免费获得学习机会和相关Linux独家实战资料!
目录
相关文章推荐
运维  ·  再见,CDN 巨头:Akamai 宣布 ... ·  3 天前  
51好读  ›  专栏  ›  马哥Linux运维

Python中的元组及字典常用方法举例

马哥Linux运维  · 公众号  · 运维  · 2018-04-10 18:00

正文

作者:fy88fy

来源:https://my.oschina.net/u/3804957/blog/1788302

1. 元组

Python的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号。元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。

  • 元组和列表十分相似

  • 元组和字符串一样是不可以变的。

  • 元组可以存储一系列的值

  • 元组通常用在用户定义的函数能够安全地采用一组值的时候,即被使用的元组的值不会改变。


如下实例:

>>> t = (1,3,5,'a',(1,))
>>> type(t)
<class 'tuple'>
>>> print(t)
(1, 3, 5, 'a', (1,))


创建空元组:

tup1 = ();


元组中只包含一个元素时,需要在元素后面添加逗号:

tup1 = (50,);


1.1 元组操作:

  • 元组和字符串一样属于序列类型,可以通过索引和切片操作

  • 元组值不可变


元组的拆分:

>> t = (1,2,3)
>>> a,b,c = t
>>> print(t)
(1, 2, 3)
>>> print(a)
1
>>> print(b+c)
5


>>> t = (1,3,5,'a',(1,))
>>> type(t)

>>> print(t)
(1, 3, 5, 'a', (1,))
>>> print(t[1])
3


元组中引用变量:

>>> print(t)
(1, 2, 3)
>>> t1 = (t,4,5,"abc")
>>> print(t1)
((1, 2, 3), 4, 5, 'abc')


元组切片:

>>> t1 = (t,4,5,"abc")
>>> print(t1)
((1, 2, 3), 4, 5, 'abc')
>>> x,y,z,m = t1
>>> print(x)
(1, 2, 3)
>>> print (m)
abc


1.2 元组的方法:


(1) index()方法:查看元素下标是多少

>>> t = (1,3,5,6,6,7,7,8)
>>> t.index(3)
1
>>> t.index(8)
7


(2) conunt()方法:统计某无素的个数

>>> t = (1,3,5,6,6,7,7,8)
>>> t.count(6)
2
>>> t.count(8)
1


元组中的内置函数:

1

len(tuple)
计算元组元素个数。

2

max(tuple)
返回元组中元素最大值。

3

min(tuple)
返回元组中元素最小值。

4

tuple(seq)
将列表转换为元组。


举例如下:

>>> tuple1 = (1,2,3)
>>> tuple2 = (2,3,4,5)
>>> len(tuple1)
3
>>> max(tuple1)
3
>>> min(tuple1)
1

>
>> list = [1,3,5,6,7]
>>> tuple(list)
(1, 3, 5, 6, 7)
>>> list
[1, 3, 5, 6, 7] 


2.字典

字典是python中的唯一的映射类型(哈希表)。字典对象是可变的,但是字典的键必须使用不可变对象,一个字典中可以使用不同类型的键值。字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中 ,格式为d = {key1 : value1, key2 : value2 }。键必须是唯一的,但值则不必。值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。


字典的方法

  • keys()

  • values()

  • get()

  • items()


举例如下:

>>> dic = {'a':1,'b':2}
>>> dic
{'a': 1, 'b': 2}

>>> dic.keys()
dict_keys(['a', 'b'])

>>> dic.values()
dict_values([1, 2])

>>> len(dic)
2

>>> dic = {'a':1,'b':2}
>>> dic.get('b')
2

>>> dic["b"]
2


更改字典内value:

>>> dic
{'a': 1, 'b': 2}
>>> dic['a'] = 8
>>> dic
{'a': 8, 'b': 2}


查看key是不是在字典里

>>> dic
{'a': 1, 'b': 2}
>>> 'b' in dic
True
>>> "c" in dic
False


变为列表:

>>> dic
{'a': 8, 'b': 2}
>>> dic.items()
dict_items([('a', 8), ('b', 2)])


复制字典:

>>> dic
{'a': 8, 'b': 2}
>>> dic1 = dic.copy()
>>> dic1
{'a': 8, 'b': 2}


删除字典内容:

>>> dic
{'a': 8, 'b': 2}
>>> dic.pop("a")
8
>>> dic
{'b': 2}


更新字典,两个字典更新为一个:

>>> dic
{'b': 2}
>>> dic1
{'a': 8, 'b': 2}
>> > dic.update(dic1)
>>> dic
{'b': 2, 'a': 8}


创建字典:

>>> dic = {}

>>> dic = dict()

>>> dict(a=1,b=2)
{'a': 1, 'b': 2}

>>> dict((["c",3],["d",4]))
{'c': 3, 'd': 4}

#fromkeys(),字典元素有相同的值时,默认为None.
>>> dic.fromkeys('abcd')
{'a': None, 'b': None, 'c': None, 'd': None}

#自动生成100个key,value默认为100
dic.fromkeys(range(100),100)
{0: 100, 1: 100, 2: 100, 3: 100, 4: 100, 5: 100, 6: 100, 7: 10.....100:100}


访问字典:

>>> dic1
{'a': 8, 'b': 2}
>>> dic["b"]
2


for循环访问:

>>> for k,v in dic1.items():print(k,v)
...
a 8
b 2


3.Python3中常用的方法


help()查看帮助信息

>> help(list)
Help on list object:

class list(object)
|  list() -> new empty list
|  list(iterable) -> new list initialized from iterable's items


dir() 看当前环境中变量

>>> dir()
['__builtins__', 'a', 'b', 'c', 'dic', 'dic1', 'django', 'django_manage_shell', 'i', 'input', 'k', 'list', 'm', 'sys', 't', 't1', 'tuple1', 'tuple2', 'v', 'x', 'y', 'z']


类型转换:

  • str()

  • int()

  • list()

  • dict()

  • tuple()


自动生成序列:

range()

>>>







请到「今天看啥」查看全文