美文网首页
python 数据类型1

python 数据类型1

作者: 只喝白开水a | 来源:发表于2018-09-12 16:33 被阅读0次

    一.字典
    一组键(key)和值(value)的组合,通过键(key)进行查找,没有顺序, 使用大括号”{}”;
    1.1 现有字典 d={‘a’:24,‘g’:52,‘i’:12,‘k’:33}请按字典中的 value
    值进行排序:

    >>> d={'a':24,'g':52,'i':12,'k':33}
    >>> a = sorted(d.items(),key=lambda x :x[1])
    >>> c=dict(a)
    >>> print c
    {'i': 12, 'a': 24, 'k': 33, 'g': 52}
    >>>
    

    1.2字典和 json 的区别
    字典是一种数据结构,json 是一种数据的表现形式
    1.python dict 字符串用单引号,json强制规定双引号。
    2.json key name 必须是字符串, python 是hashable,
    1.3字典推导式
    d = {key: value for (key, value) in iterable}

    #快速兑换字典键—值
    2 >>> mca={"a":1, "b":2, "c":3, "d":4}
    3 >>> dicts={v:k for k,v in mca.items()}
    4 >>> print dicts
    5 {1: 'a', 2: 'b', 3: 'c', 4: 'd'}
    6 >>>
    

    二. 字符串
    str:字符串是 Python 中最常用的数据类型。我们可以使用引号('或")来创建字符串。
    2.1.理解\字符
    1、转义字符 2、路径名中用来连接路径名 3、编写太长代码手动软换行
    2.2反转字符串

    >>> print 'astr'[::-1]
    rtsa
    

    2.3 将字符串"k:1|k1:2|k2:3|k3:4",处理成 Python 字典:{k:1,k1:2,... } # 字典里的 K 作为字符串处理

    >>> a = "k:1|k1:2|k2:3|k3:4"
    >>> print dict([m.split(':') for m in a.split("|")])
    {'k3': '4', 'k2': '3', 'k': '1', 'k1': '2'}
    >>>
    

    2.4 alist [{'name':'a','age':20},{'name':'b','age':30},{'name':'c','age':25}] 按age从大到小排

    >>> sorted(alist,key =lambda x:x['age'],reverse =True)
    [{'age': 30, 'name': 'b'}, {'age': 25, 'name': 'c'}, {'age': 20, 'name': 'a'}]
    >>>
    

    三.列表
    列表的常用操作:
    1)增加
    往指定位置插入:insert(位置下标,元素)
    末尾加: append
    将可迭代对象中的元素追加到列表:a=list1,b=list2,a.extend(b)

    2)取值和修改
    根据下标来
    3)删除
    del 列表名[index]:删除指定索引的数据。
    remove(数据):删除第一个出现的指定数据。
    列表名.pop():删除末尾的数据,返回值: 返回被删除的元素
    列表名.pop(index):删除指定索引的数据,返回被删除的元素。
    列表名.clear():清空整个列表的元素。
    4)排序
    1列表名.sort(reverse =True/False):默认False升序排序, 从小到大
    2列表名.reverse():列表逆序、反转。
    5)统计相关
    len(列表名):得到列表的长度。
    列表名.count(数据):数据在列表中出现的次数。
    列表名.index(数据):数据在列表中首次出现时的索引,没有查到会报错。
    6)与print a[10]不一样

    >>> a =[1,2,3,4]
    >>> print a[10:]
    [ ]
    

    7)找到两个list中相同的元素

    >>> a =[2,3,3,4,5]
    >>> b =[1,2,3,3,7]
    >>> print set(a)&set(b)
    set([2, 3])
    >>> print set(a)^set(b)
    set([1, 4, 5, 7])
    

    8)删除一个 list 里面的重复元素
    最简单的使用set()
    想要不改变他原先的顺序:

    用 list 类的 sort 方法:
    1. l1 = ['b','c','d','b','c','a','a']
    2. l2 = list(set(l1))
    3. l2.sort(key=l1.index)
    4. print l2
    也可以这样写:
    1. l1 = ['b','c','d','b','c','a','a']
    2. l2 = sorted(set(l1),key=l1.index)
    3. print l2
    
    >>> def extendlist(val, list=[]):
    ...     list.append(val)
    ...     return list
    ...
    >>> list1 = extendlist(10)
    >>> list2 = extendlist(123, [])
    >>> list3 = extendlist('a')
    >>>
    >>> print("list1 = %s" %list1)
    list1 = [10, 'a']
    >>> print("list1 = %s" %list1)
    list1 = [10, 'a']
    >>> print("list1 = %s" %list2)
    list1 = [123]
    >>> print("list1 = %s" %list3)
    list1 = [10, 'a']
    >>>
    新的默认列表只在函数被定义的那一刻创建一次。当 extendList 被没有指定特定参数 list 调用时,这组 list 的值随后将被使用。这是因为带有默认参数的表达式在函数被定义的时候被计算,不是在调用的时候被计算
    >>> list1 = extendlist(10)
    12430792
    >>> list2 = extendlist(123, [ ])
    12430712
    >>> list3 = extendlist('a')
    12430792
    

    四. 元组
    tuple:元组,元组将多样的对象集合到一起,不能修改,通过索引进行查找,使用括号”()”;

    五.集合
    set:set 集合,在 Python 中的书写方式的{},集合与之前列表、元组类似,可以存储多个数据,但是这些数据是不重复的。集合对象还支持 union(联合), intersection(交), difference(差)和
    sysmmetric_difference(对称差集)等数学运算.

    快速去除列表中的重复元素

    交集:共有的部分 b&a

    并集:总共的部分 b|a

    差集:另一个集合中没有的部分 b-a

    对称差集(在 a 或 b 中,但不会同时出现在二者中) b^a

    相关文章

      网友评论

          本文标题:python 数据类型1

          本文链接:https://www.haomeiwen.com/subject/nxyvgftx.html