zoukankan      html  css  js  c++  java
  • python自学笔记(四)python基本数据类型之元组、集合、字典

    一、元组tuple

    特性

    1、有序集合

    2、通过偏移来取数据

    3、不可变对象,不能在原地修改内存,没有排序、修改等操作

    元组不可变的好处:保证数据的安全,比如我们传给一个不熟悉的方法,确保不会改变我们的数据从而导致程序问题。

    二、集合:集合是没有顺序的概念,所以不能用切片和索引操作

    1、创建集合:可变的set()、不可变的frozenset()

    2、添加操作 add(随机插入) update(拆分插入)

    3、删除 remove

    4、成员关系 in、not in

    5、交集(&)、并集(|)、差集(-)

    例如: a = set('abcd')

        b = set('bcdef')

    交集:都出现的  a & b-->set(['b','c','d'])

    并集:重复出现的,只取一个 a | b -->set(['a','b','c','d','e','f'])

    差集:在集合a出现的,但没在b里面出现的元素 a - b-->set(['a'])

    6、set去重(列表内容元素重复)

    例如:a = [1,2,3,1,3]

       set(a) -->set([1,2,3])

       集合转列表:list(set(a))-->[1,2,3]

    三、字典

    特点

    1、无序的

    2、不能用过偏移来存取,只能通过键来存取

    3、可嵌套,方便我们组织多种数据结构

    4、属于可变类型,支持原地修改内部的内容(与list一样)

    字典 = {'key' : value} 

    key:类似我们现实的钥匙,而value则是锁,一个钥匙开一把锁,组成字典的键必须是不可变的数据类型,比如数字,字符串,元组等。

    info = {'a' : 1,'b' : 2}

    info['a']-->1

    1.定义方法:a = {'name':'niuniu',age':20}

    2.内置方法:b = dict(name = 'niuniu',age = 22)

    3.update参数是一个字典的类型,它会覆盖相同键的值,不相同的话,随机插入

    info = {'city':'beijing','phone':'htc'}

    info.update({'city':'tianjin'})

    print info-->{'city':'tianjin','phone':'htc'}

    4.删除 del、clear、pop

     del info['phone'] 删除某个元素

     del info 删除引用

     info.clear()删除字典的全部元素

     info.pop('name')返回键名对应的值(list也有pop方法 n = ['22','33'] n.pop(0) 传入的是下标,返回的是值,不传下标 默认最后一位)

     info.pop('333','ha')如果没有找到对应的键 可以返回预先设定的值

    5.成员关系操作 in、has_key()后者是字典专有方法

    info.has_key('aa')返回true或false

    keys()返回的列表,里面都是字典的所有键

    values()返回的列表,里面都是字典的所有值

    items()生成一个字典的容器是元组[('age',20),('name','niuniu')]

    get有返回值

    info.get('name')

    b = info.get('2')如果没找到返回一个类型 nonetype类型

    c = info.get('2','bcd')可以预设返回值

  • 相关阅读:
    Java实现 LeetCode 69 x的平方根
    Java实现 LeetCode 68 文本左右对齐
    Java实现 LeetCode 68 文本左右对齐
    Java实现 LeetCode 68 文本左右对齐
    Java实现 LeetCode 67 二进制求和
    Java实现 LeetCode 67 二进制求和
    Java实现 LeetCode 67 二进制求和
    Java实现 LeetCode 66 加一
    Java实现 LeetCode 66 加一
    CxSkinButton按钮皮肤类
  • 原文地址:https://www.cnblogs.com/zhenniu/p/5040512.html
Copyright © 2011-2022 走看看