Python中列表、元组和字典的相关操作

一.列表

列表:相当于一个容器,用来存放对象,变量或者另些列表等内容

(1)创建列表的方法

list1 = []
list2 = list()



(2)遍历列表

list1 = [('今天', '天气很好'), ('123', '456'), ('abc', 'xyz')]
for x in list1:
    print(x)

输出结果:  ('今天', '天气很好')

                ('123', '456')

                ('abc', 'xyz')

 

接下来,我们进一步遍历

注意:这种方法只能适用于 元素的格式和数量都相同时 

       以这段代码为例,上次遍历之后格式都为:(x,y),所以可以再次遍历,

       如果有一个元素为(x),则此方法不再适用

for x, y in list1:      
    print(x, y)

输出结果: 今天  天气很好

               123  456

               abc  xyz

 

我们可以加入索引值进行遍历,这里我们使用了enumerate函数

for i, x in enumerate(list1):
    print(i, x)

输出结果:0  ('今天', '天气很好')

              1  ('123', '456')

              2  ('abc', 'xyz')

其中 0 ,1 ,2 为索引值

 

我们可以再次遍历,

for i, (x, y) in enumerate(list1):    注意:这里的x和y有括号,格式要保持一致
    print(i, x, y)

输出结果:0  今天  天气很好

              1  123  456

              2  abc  xyz

 

(3)特殊查找列表内容的方法

listNow = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
print(listNow[0:14:3])
# [1, 4, 7, 10, 13]

意思为:从索引值为0到14之间每3个一组中取第一个

           注意:是每3个一组,而不是索引值往后加3,第三个参数为几就几个一组

此查找方法同样适用于字符串操作

strNow = '我最近运气很好,补给5发3紫 Good Luck'
print(strNow[0:14:3])
# 我运好给3

 

 

(4)列表的修改

1.向列表里添加元素,注意append函数和extend函数的区别

 

append函数:将参数列表作为一个元素添加到指定列表中,参数可以为int类型

extend函数:将参数列表中的每一个元素都添加到指定列表中,参数不能为int类型

                   如果参数为string类型,则会把参数分解成char类型添加到指定列表中

 

append函数:该函数无返回值

list1 = [('今天', '天气很好'), ('123', '456'), ('abc', 'xyz')]
list2 = [['a'], ['b'], ['c']]
list1.append(list2)
print(list1)

输出结果:[('今天', '天气很好'), ('123', '456'), ('abc', 'xyz'), [['a'], ['b'], ['c']]]

                                                                                       这里是以列表的形式作为一个元素

 

extend函数:该函数无返回值

list1 = [('今天', '天气很好'), ('123', '456'), ('abc', 'xyz')]
list2 = [['a'], ['b'], ['c']]
list1.extend(list2)
print(list1)

输出结果:[('今天', '天气很好'), ('123', '456'), ('abc', 'xyz'), ['a'], ['b'], ['c']]

                                                                                       这里是把参数列表里的元素添加过来

当添加参数为string类型时,extend函数会把string类型转换为char类型进行添加

list1 = [('今天', '天气很好'), ('123', '456'), ('abc', 'xyz')]
list1.extend('Today')
print(list1)

输出结果:[('今天', '天气很好'), ('123', '456'), ('abc', 'xyz'), 'T', 'o', 'd', 'a', 'y']

 

2.count函数:统计参数在列表中出现的次数,返回值为出现的次数

list2 = [['a'], ['b'], ['c'], 'c', ['c']]
print(list2.count(['c']))

输出结果:2   表示总共出现了2次

 

3.index函数:查找参数在列表中第一次出现的索引值,返回值为索引值

list2 = [['a'], ['b'], ['c'], 'c', ['c']]
print(list2.index(['c']))

 

4.insert函数:将参数插入到指定索引位置,该方法无返回值

list2 = [['a'], ['b'], ['c'], 'c', ['c']]
list2.insert(2, 'insert')
print(list2)

输出结果:[['a'], ['b'], 'insert', ['c'], 'c', ['c']]

 

5.pop函数:移除一个索引值为参数的元素,没参数时默认为最后一个元素,返回值为移除的元素

    注意:pop函数的返回值是你要删除的元素,而不是返回删除元素后的列表

list2 = [['a'], ['b'], ['c'], 'c', ['c']]
print(list2.pop(1))

输出结果:['b']

 

6.reverse函数:反向排列所有元素,无返回值

   sort函数:把所有元素按照某种排序方法重新排序,无返回值

                 无参数时默认为升序

   具体用法请点击:http://www.runoob.com/python3/python3-att-list-sort.html

 

7.clear函数:将列表清空,无返回值

8.copy函数:复制指定列表,无返回值

 

二.元组

元组创建的两种方法:

tuple1 = ('g', 'b', 'c', 'd', 'z')
tuple2 = 1, 2, 3, 4

注意:当元组中只有一个元素时,要在后面加一个逗号(,)

元组只能查找,无法修改,删除时不能删除其中一个元素,但可以删除整个元组

 

三.字典

一种容器,可以存储任何类型变量,以键值对的形式,key:value

形式如下:

dict = {key1 : value1, key2 : value2}

其中key值必须唯一,value值可以相同,key值不允许为列表

 

(1)查找字典,只能通过key值查找

dict1 = {'今天': '天气不错',
        'data': '2018.6.30',
        'week': 6
         }
print(dict1['week'])

输出结果:6

 

(2)修改字典

1.更新字典,直接通过key值找到value值修改即可

dict1 = {'今天': '天气不错',
        'data': '2018.6.30',
        'week': 6
         }
dict1['week'] = 7
print(dict1['week'])

输出结果:7

2.添加新的键值对

dict1 = {'今天': '天气不错',
        'data': '2018.6.30',
        'week': 6
         }
dict1['time'] = '10:00'
print(dict1)

输出结果:{'今天': '天气不错',

                'data': '2018.6.30', 

                'week': 6, 

                'time': '10:00'}

3.clear函数:删除字典内的所有元素,无返回值

更多详细内容请参考:http://www.runoob.com/python3/python3-dictionary.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值