zoukankan      html  css  js  c++  java
  • Python_20180425

    #!/usr/bin/env python
    # encoding: utf-8
    import time
    start = time.clock()
    t = (10,11,12,13,14)
    print(t)
    #可以索引可以切片:但是元组是不可变的:
    print(t[0])
    print(t[1:3])
    end = time.clock()
    res = time.localtime(end - start)
    print(res)

    #字典 :空字典——Python使用{}或者dict()来创建一个空的字典:
    a = {}
    print(type(a))
    a = dict()
    print(type(a))
    #有了dict(字典)之后,可以用索引键值的方法向其中添加元素,也可以通过索引来查看元素
    #的值
    a["one"] = "this is number 1"
    a["tow"] = "this is number 2"
    #更新键值:
    a["one"] = "this is number 1,too"
    print(a["one"])
    print(a)
    #初始化字典:
    #可以看到,Python使用key:value 这样的结构来表示字典中的元素结构,事实上,可以直接使
    #用这样的结构来初始化一个字典:
    b = {'one':'this is the number 1','two':'this is number 2'}
    print(b['one'])
    #python 中的字典,Python并不一定按照顺序插入键值,因为键本身不一定是有序的。
    print(a)
    print(b)

    #键必须是不可改变的类型
    #由于hash的目的,Python中要求这些键值对的键必须是不可变的,而值可以是任意的
    #Python对象。
    #一个表示近义词的字典:
    synonyms = {}
    synonyms['mutable'] = ['change','shidong','dong','hello world']
    synonyms['second_exam'] = ['fixed','set','rigid','inflexible']
    synonyms['third'] = {'one':1,'two':2,'three':3}
    print(synonyms)
    print(synonyms['third'])

    #字典可以作为值传入新的字典
    e1 = {'mag':0.3,'width':10}
    e2 = {'mag':0.4,'width':20}
    e3 = {'mag':10,'width':100}
    events = {500:e1,200:e2,'hello':e3}
    print(events)

    #使用dict初始化字典:除了通常的定义方式,还可以通过dict()转化来生成字典:
    inventory = dict(
    [('foo',123),
    ('from',456)
    ]
    )
    print(inventory)

    #利用索引直接更新键值对:
    inventory['from'] =10000
    print(inventory)

    connections = {}
    connections[('New York', 'Seattle')] = 100
    connections[('Austin', 'New York')] = 200
    connections[('New York', 'Austin')] = 400
    print(connections)

    #字典方法:get方法
    a = dict(
    [('one',1),
    ('two',2)
    ]
    )
    print(a)
    print(a.get('one'))
    #也可以指定默认值参数:
    print(a.get('three','没有这个值'))

    #pop方法删除元素
    #pop方法可以用来弹出字典中某个键对应的值,同时也可以指定默认参数:
    #d.pop(key,default = None)
    print(a.pop('two','空值'))

    #与列表一样,del函数可以用来删除字典中特定的键值对,例如:
    del a['one']
    print(a)

    a['shidong']= 'dong'
    print(a)
    #update方法更新字典
    #之前已经知道,可以通过索引插入、修改单个键值对,但是如果相对多个键值进行
    #操作,这种方法就显得比较麻烦,需要用到update方法:d.update(news)


    person = {}
    person['first'] = "Jmes"
    person['last'] = "Maxwell"
    person['born'] = 1831
    print(person)

    newd = {'first':'James','middle':'Clerk'}
    person.update(newd)
    print(person)

    #使用in查看字典中是否存在特定的键:
    barn = {'cows':1,'dogs':5,'cats':3}
    print('chickens' in barn)
    print('cows' in barn)

    #keys方法,values方法和items方法#`d.keys()`#返回一个由所有键组成的列表:print(barn.keys())#d.values()#返回一个由所有值组成的列表:print(barn.values())#d.items()#返回一个由所有键值对元组组成的列表:print(barn.items())

    #!/usr/bin/env python
    # encoding: utf-8
    #set 集合是一种无序序列,当集合中存在两个同样的元素的时候,Python只会保存
    #其中的一个(唯一性),同时为了确保其中不包含同样的元素,集合中放入的元素
    #只能是不可变的对象(确定性)。
    #集合生成 :可以用set()函数来显示的生成空集合:
    a = set()
    print(type(a))
    #集合会去除重复元素。
    a = set([2,3,2,4,5,9])
    print(a)
    #集合也可以用{}来创建
    a = {1,2,3,4,5,5}
    print(type(a))
    print(a)
    #集合操作
    a = {1,2,3,4}
    b = {3,4,5,6}
    #并:两个集合的并,返回包含两个集合所有元素的集合(去除重复)。
    #可以用方法a.union(b)或者操作a|b实现。
    print(a.union(b))
    print(a|b)
    #交:两个集合的交,返回包含两个集合共有元素的集合。
    #可以使用方法a.intersection(b)或者a&b
    print(a.intersection(b))
    print(a&b)

    #差:a和b的差集,返回只在a不在b的元素组成的集合。
    #可以用方法a.difference(b) 或者a-b实现。
    print(a.difference(b))
    print(a-b)
    print(b.difference(a))
    print(b - a)

    #对称差:a和b的对称差集,返回在a或在b中,但是不同时在a和b中的元素组成的集合
    #可以用方法a.symmetric_difference(b),或者操作a^b实现(异或操作符)。
    print(a.symmetric_difference(b))
    print(a^b)

    #包含关系:
    a = {1,2,3}
    b = {1,2}
    #要判断b是不是a的子集,可以用b.issubset(a)方法,或者更简单的用操作 b <=a:
    #反之亦然
    print(b.issubset(a))
    print(b<=a)

    #集合方法
    #add方法集合添加单个元素。如果集合添加的是已有元素,那么集合不变:
    t = {1,2,3}
    t.add(5)
    print(t)

    #update方法向集合添加多个元素
    #跟列表的extend方法类似,用来向集合添加多个元素。
    t.update({5,6,7})
    print(t)

    #remove方法移除单个元素
    t.remove(6)
    print(t)

    #pop方法弹出元素:由于集合没有顺序,不能想列表一样按照位置弹出元素,所以pop方法删除
    #并返回集合中任意一个元素,如果集合中没有元素则会报错。
    t.pop()
    print(t)
    print(t.pop())
    print(t)

    #discard方法
    #作用与remove一样,但是当元素在集合中不存在的时候不会报错。
    t.discard(20)
    print(t)

    #difference_update 方法:从a中去除所有属于b的元素:
    #a.difference_update(b)
    a = {1,2,3,4}
    b = {3,4,5,6}
    print(a.difference(b))
    a.difference_update(b)
    print(a)
     
    #不可变集合:使用frozenset来进行创建,与集合不同的是一旦不可变集合一旦创建就不可改变
    #不可变集合的一个主要应用是作为字典的键,例如用一个字典来记录两个城市之间的距离。
    s = frozenset([1,2,3,4,'a',1])
    print(s)
     
  • 相关阅读:
    UWP中的消息提示框(二)
    UWP中的消息提示框(一)
    使用批处理编写ORACLE设置
    程序员那些事儿
    “程序已停止工作”问题的解决方法
    《第一行代码--Android》阅读笔记之数据持久化
    《第一行代码--Android》阅读笔记之广播
    《第一行代码--Android》阅读笔记之界面设计
    《第一行代码--Android》阅读笔记之Activity
    WinForm中为按钮添加键盘快捷键,超简单,亲测有效
  • 原文地址:https://www.cnblogs.com/sd880413/p/8945866.html
Copyright © 2011-2022 走看看