Python快速入门(4)-列表、元组、字典、集合的使用

来源:互联网 发布:linux搭建局域网 编辑:程序博客网 时间:2024/06/13 07:53

列表[,] 元组(,) 字典{:,:} 集合{,}

1)列表

感觉作用跟C++里的数组是差不多的,你可以声明列表,然后调用一大堆的内置函数

修改某个值,修改方法跟C++差不多,添加数据,用append添加

代码:

a=[]  #声明一个空的列表for i in range(0,10):    x=input()         a.append(x)    #列表内填入相应的值,直接赋值我试过好像不行for i in range(0,10):    print(a[i])a.sort()           #调用内置函数,排序a[2]=1             #直接进行赋值for i in range(0,10):    print(a[i])

其他使用方法及详解:

空列表:a=[]
    函数方法:a.append(3)       >>>[3]    
          a.extend([3,4,5])       >>>[3,3,4,5]    添加一个列表序列
          a.insert(1,'hello')        >>>[3,'hello',3,4,5]
          a.remove(3)             >>>['hello',3,4,5] 删除第一个出现的3,没有3则报错
          a.pop()              >>>['hello',3,4]
          a.pop(0)              >>>[3,4]
          a.index(4)          >>>1    返回出现的第一个4的下标
          a.count(3)          >>>1    列表中元素3的个数
          a.sort        >>>[3,4]    排序
          a.reverse()        >>>[4,3]    反序
    删除元素的方法
        a.remove(3)    通过值删除元素,删除第一个为参数值得元素
        a.pop()       通过下标删除元素,默认删除列表最后一个值,带参数则删除下标为参数值的元素
        del a[0]       通过下标删除元素,
            del a[2:4] 删除a表下标为2,3的元素
        del a[:]   删除a列表所有元素
        del a       删除列表
    列表推导式:
        vec = [2,4,6]    
         [3*x for x in vec if x<6]    >>>[6,12]    3*2,3*4
        vec2 = [1,2,3]
        [x*y for x in vec for y in vec2]    >>>[2,4,6,4,8,12,6,12,18]
    嵌套列表推导式:
        mat = [
        [1,2,3],
        [4,5,6],
        [7,8,9]
        ]
        print ([[row[i] for row in mat] for i in [0,1,2]])    
        >>>[[1, 4, 7], [2, 5, 8], [3, 6, 9]]

2)元组

元组与列表的区别就是,元组赋值以后就不能改变

代码:

t = () #空元组t = (520,1314)for i in t:   #循环输出元组内的元素    print(i)

3)字典

个人理解,字典跟数据结构里的hash是差不多,有异曲同工之妙,

代码:

d = {'jack':'jack@mail.com','tom':'tom@mail.com'} #给定一个字典  'key':'value'print(d['jack'])  #根据key值 调用 value值d['jim']='jin@mial.com'   #进行添加数据for name,email in d.items():    #循环输出字典中的相应的值    print(name,email)

d = {'Jack':'jack@mail.com','Tom':'Tom@main.com'}
    d['Jack']            >>>'jack@mail.com
    d['Jim'] = 'Jim@sin.com'    >>>{'Jim': 'Jim@sin.com', 'Jack': 'jack@mail.com', 'Tom': 'Tom@main.com'}             

  del d['Jim']    >>>{'Jack': 'jack@mail.com', 'Tom': 'Tom@main.com'}
    list(d.keys())    将返回一个字典中所有关键字组成的无序列表
    sorted(d.keys()) 将返回一个字典中所有关键字组成的排序列表
    dict()    构造函数可以直接从key-value对中创建字典
    dict([('Tim',123),('Tiny',234)])    >>>{'Tiny': 234, 'Tim': 123}

4)集合

a_set = {1,2,3,4}a_set.add(5)      #添加一个元素for i in a_set:    print(i)a_set.discard(3)  #删除掉一个元素for i in a_set:    print(i)



阅读全文
1 0
原创粉丝点击