Python自学之旅_第二天(2)

2.5 Python结构数据类型

  • 列表
    列表是以"[]“包围起来的数据集合,不同成员间使用”,"分隔开,列表中可以包含任何数据类型,也可包含另一个列表
    (1)创建一个空列表
>>> []			
[]

(2)创建一个只有一个元素的列表

>>> [1]
[1]

(3)创建一个包含不同数据元素的集合

>>> [1,'a',3.14] 
[1, 'a', 3.14]

(4)访问列表中的元素,使用索引的方式进行访问,索引从0开始

>>> alist=[1,2,3,4,5]     
>>> alist[0]   
1

(5)列表支持加法运算

>>> [1,3]+[2,4]    
[1, 3, 2, 4]
>>> 

(6)同时也支持乘法运算

>>> [1]*3     
[1, 1, 1]
  • 关于列表的多个操作函数
    (1)list.append(x),往列表尾部追加成员x
>>> alist=[1,2]     
>>> alist.append(3)     
>>> print(alist)     
[1, 2, 3]

(2)list.count(x),返回列表中的参数x出现的次数

>>> alist=[1,2,3,1]     
>>> print(alist.count(1))    
2

(3)list.extend(a),往列表中追加另一个列表a

>>> alist=[1,2,3]     
>>> blist=[4,5,6]     
>>> alist.extend(blist)     
>>> print(alist)     
[1, 2, 3, 4, 5, 6]

(4)list.index(x),返回参数x在列表中的序号,x不存在时则报错

>>> alist=[1,2,3]     
>>> print(alist.index(2))     
1
>>> alist=[1,2,3]
print(alist.index(4))     
Traceback (most recent call last):
  File "<pyshell#63>", line 1, in <module>
    print(alist.index(4))
ValueError: 4 is not in list

(5)list.insert(index,object),往列表中指定位置插入数据

>>> alist=[1,2,3]     
>>> alist.insert(2,4)     
>>> print(alist)     
[1, 2, 4, 3]

(6)list.pop(),删除列表中尾部的成员并返回删除的成员

>>> alist=[1,2,3]     
>>> alist.pop()     
3

(7)list.remove(),删除列表中的指定成员,有多个则删除第一个,指定成员不存在时则报错

>>> alist=[1,2,3]     
>>> alist.remove(2)     
>>> print(alist)     
[1, 3]
>>> alist=[1,2,3]     
>>> alist.remove(4)     
Traceback (most recent call last):
  File "<pyshell#81>", line 1, in <module>
    alist.remove(4)
ValueError: list.remove(x): x not in list

(8)list.sort(),将列表中成员排序,要求其成员可排序,否则报错

>>> alist=[2,3,4,1]     
>>> alist.sort()     
>>> print(alist)     
[1, 2, 3, 4]

存在不可排序成员时报错

>>> alist=[2,1,3,'123']     
>>> alist.sort()     
Traceback (most recent call last):
  File "<pyshell#88>", line 1, in <module>
    alist.sort()
TypeError: '<' not supported between instances of 'str' and 'int'
  • 元组,元组是特殊的列表,以"()"括起来的数据元素,与列表不同的是,元组一创建就不能改变
    (1)创建只有一个元素的元组
>>> (1,)     
(1,)

(2)用逗号隔开,可以直接创建一个元组

>>> 1,2     
(1, 2)

(3)右边为以元组,自动将元组第一个数值与x绑定,第二个与y绑定

>>> x,y=2,3    
>>> x     
2
>>> y     
3

(4)访问元组的序号为1的元素

>>> atpl=(1,2,3)     
>>> atpl[1]     
2

(5)让我们试试修改元组的元素,结果报错了

>>> atpl=(1,2,3)     
>>> atpl[1]=4     
Traceback (most recent call last):
  File "<pyshell#107>", line 1, in <module>
    atpl[1]=4
TypeError: 'tuple' object does not support item assignment
  • 字典,字典是Python中比较特别的一种数据类型,其中成员是以"键:值"对的形式存在的;字典以大括号"{}"包围的以"键:值"对方式声明,与列表不同的是,字典是无序的,也就是说需要通过索引访问字典中的键所对应的值
    (1)建立字典
>>> {'a':1,'b':2,'c':3}     
{'a': 1, 'b': 2, 'c': 3}

(2)使用键名访问成员

>>> adct={'a':1,'b':2,'c':3}     
>>> adct['a']     
1
  • 字典相关操作函数
    (1) dic.clera(),清空字典
>>> adic={'a':1,'b':2,'c':3}     
>>> adic.clear()     
>>> adic     
{}

(2)dic.copy(),复制字典

>>> adic={'a':1,'b':2,'c':3}     
>>> bdic=adic.copy()     
>>> bdic     
{'a': 1, 'b': 2, 'c': 3}

(3)dic.get(k,[default]),获取键k对于的值,不存在则返回default

>>> adic={'a':1,'b':2,'c':3}     
>>> adic.get('a')     
1

不存在则返回default

>>> adic={'a':1,'b':2,'c':3}     
>>> adic.get('d')
#返回空

(4)dic.item(),获取由键和值组成的迭代器

>>> adic={'a':1,'b':2,'c':3}     
>>> adic.items()     
dict_items([('a', 1), ('b', 2), ('c', 3)])

(5)dic.keys(),获取键的迭代器

>>> adic={'a':1,'b':2,'c':3}     
>>> adic.keys()     
dict_keys(['a', 'b', 'c'])

(6)dic.pop(k),删除k:v的键值对,并返回删除键所对应的值

>>> adic={'a':1,'b':2,'c':3}    
>>> adic.pop('a')     
1
>>> adic     
{'b': 2, 'c': 3}

(7)dic.update(adict),从另一个字典更新成员(不存在则创建,存在则覆盖)
不存在则创建

>>> adic={'a':1,'b':2,'c':3}     
>>> bdic={'d':4}     
>>> adic.update(bdic)    
>>> adic     
{'a': 1, 'b': 2, 'c': 3, 'd': 4}

存在则覆盖

>>> adic={'a':1,'b':2,'c':3}     
>>> bdic={'a':4}     
>>> adic.update(bdic)     
>>> adic     
{'a': 4, 'b': 2, 'c': 3}

(8)dic.values(),获取值的迭代器

>>> adic={'a':1,'b':2,'c':3}     
>>> adic.values()     
dict_values([1, 2, 3])

(9)dic.fromkeys(iter,value),以列表或元组中给定的键建立字典,默认值为value

>>> alist=[1,2,3]
>>> adic.fromkeys(alist)     
{1: None, 2: None, 3: None}
>>> alist=['a','b','c']     
>>> blist=[1,2,3]     
>>> adic.fromkeys(alist,blist)     
{'a': [1, 2, 3], 'b': [1, 2, 3], 'c': [1, 2, 3]}

(10)dic.popitem(),从字典尾部删除K:V,并返回它

>>> adic={'a':1,'b':2,'c':3,'d':4,'e':5}    
>>> adic.popitem()     
('e', 5)
>>> adic.popitem()     
('d', 4)
>>> adic.popitem()     
('c', 3)

(11)dic.setdefault(k,default),若字典中存在key值为k的,则返回其对应的值,否则,则在字典中建立一个k:default的字典成员
存在key值对应为k的

>>> adic={'a':1,'b':2,'c':3,'d':4,'e':5}     
>>> adic.setdefault('a')     
1

不存在key值为k的则创建一个成员

>>> adic.setdefault("f")     
>>> adic     
{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5, 'f': None}
发布了8 篇原创文章 · 获赞 0 · 访问量 28

猜你喜欢

转载自blog.csdn.net/weixin_43339889/article/details/104955851