python基础之元组,字典

本文分为两部分,第一部分是讨论元组的性质和一些常见的方法,第二部分是讨论字典的性质和一些常见方法。

一.元组的性质和方法

1.元组的定义:

元组的定义方式如下:

tu=(12,23,[32,33],'dhue',Ture,(32,'re'))

元组的标志符是“()”。元组很多性质和列表一致,两个的区别在于可以修改和删除列表中的元素,但是元组中的元素则不可以修改和删除(注意,这里指的是一级元素)。为了将元组与函数区分开,建议在元组的最后一个元素后面加上“,”。

2.元组的性质:

(1)元组的元素不可修改

 这个性质要注意,这里说的元素不可修改,是指的元组的一级元素不可修改,比如对于(12,34,‘str’,[12,22])这个元组,每一个位置的数据类型不可以更改,也就是说不能把第三个字符串改为数字,第四个列表改为其他数据类型,但是可以把列表中的元素改为其他元素。

(2)元组可以用for,while遍历(元组是有序的)
(3)元组可以进行索引操作和切片操作
(4)元组,列表字符串可以相互转化

3.元组类的方法

(1)count(value):

  计算value值在元组中出现的次数

(2)index(value,start=None,end=None):

  返回value值在元组中第一次出现的位置,可以指定返回。

二.字典的性质和常见方法

1.字典的定义:

 1 dic={
 2     'key1':'hello',
 3     'key2':'defe',
 4     True: 43233,
 5     'key3': [43,
 6            54,
 7            56,
 8            {
 9                'key22': 675,
10                'key54':'hfuer',
11                'hey44':(43,54)
12            }],
13     'key4':'value'
14 }
15 print(dic)

字典是根据键值对(key,value)义的,一个键值对代表一个元素,不同的键值对用“,”分隔,键值之间用“:”分隔。

2.字典的性质

(1)列表,字典不可以作为字典的key值
(2)字典的value值可以是任意类型
(3)字典是无序的,因此不可以使用while循环
(4)字典是可迭代对象,可以用for循环,for循环有以下四种方式
 a.这种循环等价于for item in dic.keys(),循环遍历的是所有的key.
for item in dic:
    print(item)
b.循环遍历所有的key值,该循环方法与a相同。
for item in dic.keys():
    print(item)
c.循环遍历所有的value值。
for item in dic.values():
    print(item)
d.循环遍历所有的key,value值。
for k,v in dic.items():
    print(k,v)
(5)字典可以根据key值查到该key值对应的value值:
v=dic['key1']
print(v)
(6)字典是无序的,因此能通过数据索引去查找值(字典的索引是key值)
(7)字典可以del删除,删除key值,则key值对应的value值也会被删除

2.字典类(dict)的方法:

(1)clear():

清楚字典

(2)copy():

复制字典(浅拷贝)

(3)fromkeys():
v=dict.fromkeys(['key','key2','key3'],123)
print(v)

代码执行结果:

该方法用来初始化一个字典,第一个参数中的元素作为key值,如果传入一个列表,则列表中的每一个元素都会作为key值,第二个参数是所有key值的value值,即所有的key值对应的value值都会被初始化为该值。

(4)get(key,d=None):

返回字典的指定的key值,如果在字典中没有找到该key值,可以通过指定d返回指定的数据,默认是返回None.

(5)pop(key,d=None):

删除字典的指定的key值,并返回该key值对应的value值,如果没有找到该key值,可以通过d指定方法的返回值,默认返回Node.

(6)popitem():

随机删除字典中一个键值对。

(7)setdefault(key,d=Node):

为key值设置默认值,如果字典中存在该key值,则返回字典中key值对应的value值,如果字典中不存在该key值,则把键值对加入字典,并返回key值的value值。

(8)update():
v=dict.fromkeys(['key','key2','key3'],123)
print(v)
v.update({'key':12,'kkk':'hshsh','hdue':454})
print(v)

更新字典key值对应的value值,如果字典中存在key值,则更新value,如果字典中不存在key值,则将键值对加入字典。

原文地址:https://www.cnblogs.com/jiachuantang/p/8360812.html