zoukankan      html  css  js  c++  java
  • Python学习笔记3-Python元组、数组、字典集合的操作

    在Python中数组中的每一项可以是不同的数据类型
    元组:只能读不能写的数组

    aTuple=(1,'abc','tmc',79.0,False)
    print aTuple[1:3]
    print type(aTuple) # tuple:元组
    aTuple[1]=5 #在这,如果要对元组进行修改,就会报错:'tuple' object does not support item assignment


    Tuple 没有的方法:
    [1] 不能向 tuple 增加元素,没有 append 、 extend 、insert 等方法。
    [2] 不能从 tuple 删除元素,没有 remove 或 pop 方法。
    [3] 不能在 tuple 中查找元素,没有 index 方法(index是查找而不是索引,索引直接用下标即可,如:t[0])。

    使用 tuple 的好处:
    * Tuple 比 list 操作速度快。如果您定义了一个值的常量集, 并且唯一要用它做的是不断地遍历它, 请使用 tuple 代替 list。
    * 如果对不需要修改的数据进行 “写保护”, 可以使代码更安全。


    数组:Python中,所有的数组都使用[ ]


    Python中,数组的使用

    arr=[1,2,'jbc','tom',True,False,567.88]
    print arr[0]  # 1
    print arr[:2] # [1, 2]
    print arr[3:] # ['tom', True, False, 567.88]
    print arr[-1] # 567.88
    print arr[2:4] # ['jbc', 'tom']
    arr[0]='a string'
    print arr[0] # a string
    
    
    arr.append('吉米') #向数组中添加元素
    arr.insert(1, 555) #在指定位置添加
    arr.extend([998,'ttttt','tom',False]) #向数组中追加一个数组
    print arr
    
    
    #在数组中搜索元素 
    print arr.index(998) #在数组中的位置
    print ('ttttt' in arr) #是否存在数组中
    
    
    #删除数组中的元素 
    arr.remove('tom') #移除首个存在的元素tom
    #移除数组中所有存在的元素
    while('tom' in arr):  
        arr.remove('tom')
    print arr
    print arr.pop() #移除数组中的最后一个元素,并返回被移除的元素
    print arr
    
    
    # 循环输出
    for x in arr:
        print x
    
    #数组的运算    
    arr=[1,2]*3 # 等同于 arr = [1, 2] + [1, 2] + [1, 2]  结果:[1, 2, 1, 2, 1, 2]
    print arr
    arr=arr+['tom','jack'] # [1, 2, 1, 2, 1, 2, 'tom', 'jack']
    print arr
    arr+=[778,223] #[1, 2, 1, 2, 1, 2, 'tom', 'jack', 778, 223]
    print arr 
    
    
    

    比较另类的情况

    a = ("one","two")
    print a[0] #one
    b = ("just-one")
    print b[0] #j 在元组中,如果只有一项,输出的话,Python将他视为一个字符串;(这个比较让人纠结)
    c = "just-one",
    print c[0] #just-one 在这,别看他只是一个字符串,但如果在字符串后面加一个,号那Python会视他为一个数组;(怎么会有这么奇怪的语法)
    d = "just-one"
    print d[0] #j



    字典类型集合

    dic={"name":"jack","age":18,"isMarry":False}
    print dic #{'isMarry': False, 'age': 18, 'name': 'jack'}
    print dic.keys() #['isMarry', 'age', 'name']
    print dic.values() #[False, 18, 'jack']
    print dic['name'] #jack
    dic['age']=30
    print dic['age'] #30
    
    
    #循环输出字典的值和键
    for key in dic:
        print key,dic[key]
    
    
    for i,key in enumerate(dic): #enumerate函数用于遍历序列中的元素以及它们的下标 ,将字典分面(0,name),(1,isMarry)的索引与key是集合
        print i,key,dic[key]
    #删除键值对
    del dic['isMarry']
    dic.clear()     # 清空词典所有条目
    del dic       # 删除词典
    print dic


    Python字典包含了以下内置函数:
    1、cmp(dict1, dict2):比较两个字典元素。
    2、len(dict):计算字典元素个数,即键的总数。
    3、str(dict):输出字典可打印的字符串表示。
    4、type(variable):返回输入的变量类型,如果变量是字典就返回字典类型。
    Python字典包含了以下内置方法:
    1、radiansdict.clear():删除字典内所有元素
    2、radiansdict.copy():返回一个字典的浅复制
    3、radiansdict.fromkeys():创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值
    4、radiansdict.get(key, default=None):返回指定键的值,如果值不在字典中返回default值
    5、radiansdict.has_key(key):如果键在字典dict里返回true,否则返回false
    6、radiansdict.items():以列表返回可遍历的(键, 值) 元组数组
    7、radiansdict.keys():以列表返回一个字典所有的键
    8、radiansdict.setdefault(key, default=None):和get()类似, 但如果键不已经存在于字典中,将会添加键并将值设为default
    9、radiansdict.update(dict2):把字典dict2的键/值对更新到dict里
    10、radiansdict.values():以列表返回字典中的所有值








  • 相关阅读:
    注意:MagickReadImageBlob() 引发的问题
    Notepad++ 【自动完成】与【输入时提示函数参数】互相冲突,无奈
    收藏:png8和png24的根本区别
    【物理分辨率】与【逻辑分辨率】
    算法
    算法
    Linux 用户和文件
    Oracle索引技术研究
    Linux Socket
    Linux Socket
  • 原文地址:https://www.cnblogs.com/raphael5200/p/5114723.html
Copyright © 2011-2022 走看看