python之列表、元组、字典


列表

  • 列表是什么
    由一系列按特定顺序排列的元素组成。(可以存储多种类型的数据也可以嵌套列表)。
    如果直接打印列表,会将方括号也一起打印出来。



    数组:存储同一种数据类型的集合。
    列表:(打了激素的数组。)可以存储任意数据类型的集合。一个变量存储多个信息。

  • 列表的特性
    索引、切片、重复、连接、成员操作符、for循环遍历.
索引

切片:格式:【start:end:step】
step为步长,步长为正时从左到右,步长为负时,从右到左。
切片返回的结果不包含结束索引,即不包含最后一位
-1代表最后一个位置的索引。

切片

列表嵌套列表的切片

列表的重复


列表的连接
两个列表连接成一个新的列表

列表的成员操作符

for循环遍历

列表的查看
查看列表中指定元素出现的次数与查看指定元素的索引值

列表的删除
1、使用del,从内存中删除,不可以再访问。

2、使用pop()方法删除。从列表中删除并且可以继续使用他的值。默认弹出最后一个元素。
使用pop方法会返回被弹出的值,可以继续使用

3、使用remove
根据值删除元素。

  • 列表的修改
    通过索引重新赋值
    通过切片


    通过切片可以一次修改列表指定片段的元素而通过索引修改一次只能更改一次
  • 列表的增加


append:追加
extend:增加一个列表,即增加多个元素
insert:指定位置添加元素

  • 列表的排序
    按照ascii码排序
    sort永久排序,sorted临时排序
    a.sort(key=str.lower)
    a.sort(key=str.upper)
    对字符串排序不区分大小写



    对数字顺序逆序排列
    a.sort(reverse=True)



    将原有的列表的顺序打乱
    import random
    a=list(range(10)
    random.shuffle(a)

元组

  • 元组的特性
    不可变的列表称为元组。由于元组的值是不可变的所以不能给元祖的元素赋值。但是如果元组里面包含可变数据类型时,可以间接修改元组内容
    索引、切片、连接、重复、成员操作符。
    索引以及不可赋值

    切片

    重复

    成员操作符

    当元组里只有一个元素时要加逗号

    可以看出元组和列表不一样阿
  • 元组的应用场景
    1、变量交换数值


    先把a,b封装成一个元组

b,a = a,b

b =(1,2)[0] a=(1,2)[1]

print a,b

2、打印变量值

name = 'westos'

age = 10

t = (name,age)

print 'name: %s,age: %d' %(name,age)

print 'name: %s,age: %d' %t

3、元组的赋值:有多少个元素就用多少个变量接收

t = ('westos',10,100)

name,age,score = t

print name,age,score

这个例子需要认真看
注意!sorted处理过的元组会返回一个列表此时重新赋给a,a就不指向之前的那个元组了,元组也没有发生改变。

集合

集合里面的元素是不可以重复的。

  • 集合的特性。
    集合只支持成员操作符与for循环。




  • 集合的定义


    定义一个空集合

如何定义一个空集合

s2 = {}

print type(s2)

s3 = set([])

print s3,type(s3)

集合的应用

集合的应用

li = [1,2,3,1,2,3]

print list(set(li))


字典

  • 字典的定义
    字典是一个无序的数据集合,使用print输出字典的时候通常输出的顺序和定义的顺序不一致的。


  • 字典的特性
    成员操作符(默认判断key值是否存在)、for循环(默认循环遍历字典中的key值)
  • 字典的删除
    d = dict(a=1, b=2,c=3)
    pop:弹出指定的key-value值
    d.pop('a')
    print d
    print d
    d.popitem()
    print d
    del d['a']
    print d


  • 字典的修改与查看

d.keys()
d.values()
d.items()
以上返回的为一个列表


遍历
for k,v in service.items():
print k,'---->',v
for k in service:
print k,'----->',service[k]
print service['https']

get方法
if 'https' in service:
print service['https']
else:
print 'key not exist'
get方法获取指定key对应的value值
如果key值存在,返回对应的value值
如果key值不存在,默认返回None,如果需要指定返回值,传值即可
print service.get('http','key not exist')




  • 字典的增加

d = dict(a=1, b=2)
print d
添加或者更改key-value对
d['g'] = 10
print d
d['a'] = 10
print d
update:
如果key值存在,更新value值
如果key值不存在,添加key-value值
d.update({'a':4,'f':1})
print d
setdefault
如果key值已经存在,不做修改
如果key值不存在,添加key-value值
d.setdefault('a',10)
print d



  • 枚举
    返回索引值和对应的value值

接上


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 一、快捷键 ctr+b 执行ctr+/ 单行注释ctr+c ...
    o_8319阅读 11,133评论 2 16
  • 写在前面的话 代码中的# > 表示的是输出结果 输入 使用input()函数 用法 注意input函数输出的均是字...
    FlyingLittlePG阅读 8,186评论 0 9
  • 导读 在上一章中,我们学习了什么是列表,如何对列表进行增删改操作以及介绍了一些常用的关于列表的方法,在这一章里,我...
    明日之丈阅读 3,184评论 0 0
  • 1. 电影最top的台历,上线没舍得买,有天小孩子突然拿出来给我。 2. 要用一下他的手机,问密码多少,“你生日”。
    粉粉猪_8949阅读 3,382评论 0 0
  • 每一个都有自己的舒适区,在舒适区里能最大限度减少压力和风险,让人处于心理安全的状态。走出舒适区很难,离开它就意味着...
    独一无二的葛儿阅读 1,558评论 0 0

友情链接更多精彩内容