zoukankan      html  css  js  c++  java
  • 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值,则将键值对加入字典。

  • 相关阅读:
    在VS2010下,用C语言编写pthread多线程程序的配置
    java帮助文档系列JDK1.5 JDK1.6 JDK1.7官方中英完整版下载
    瑜伽练习day02----适合练习瑜伽时听的歌曲
    瑜伽练习day01----瑜伽练习的好处,坏处
    抛出错误Debug Assertion Failed!
    stringstream的基本用法
    AWS中S3的Bucket桶访问策略
    AWS中SQS的几项使用注意
    AWS在.Net中连接数据库时发生认证错误的解决办法
    .Net捕捉配置或程序错误
  • 原文地址:https://www.cnblogs.com/jiachuantang/p/8360812.html
Copyright © 2011-2022 走看看