tuple 元组及字典dict

1 tu = (11,22,33,)#结尾要加逗号
2 tu = tuple((11,22,33))
3 tu = tuple([11,22,33])
4 
5 l1 = [11,22,33]
6 tu = tuple(l1)#把列表转换成元组
7 li = list(tu)#把元组转换成列表

 字典dict:

dic = {'k1':'v1', 'k2':'v2'}
dic = dict(k1 = 'v1',k2 = 'v2')
清空所有元素:
def clear(self): # real signature unknown; restored from __doc__ """ D.clear() -> None. Remove all items from D. """ pass
浅拷贝: def copy(self): # real signature unknown; restored from __doc__ """ D.copy() -> a shallow copy of D """ pass @staticmethod # known case
    def fromkeys(*args, **kwargs): # real signature unknown
        """ Returns a new dict with keys from iterable and values equal to value. """
        pass
    @staticmethod # known case

例:
new_dict = dic.fromkeys(['k1','k2'],'v1')
print(new_dict)
得:
{'k2': 'v1', 'k1': 'v1'}

如果没有值返回none,不会报错,也可以设置没有值时的默认值

def get(self, k, d=None): # real signature unknown; restored from __doc__ """ D.get(k[,d]) -> D[k] if k in D, else d. d defaults to None. """ pass
dic = {'k1':'v1', 'k2':'v2'}
#print(dic['k1'])
#print(dic['k2'])
#print(dic['k3'])

print(dic.get('k1'))
print(dic.get('k2'))
print(dic.get('k3','xiaolong'))#等同于print(dic['k3']),如果没有值返回none,不会报错,也可以设置没有值时的默认值
    def items(self): # real signature unknown; restored from __doc__
        """ D.items() -> a set-like object providing a view on D's items """
        pass
例:
dic = {'k1':'v1', 'k2':'v2'} print(dic.keys()) print(dic.values()) print(dic.items())#键值对 for k in dic.keys(): print(k) for v in dic.values(): print(v) for k,v in dic.items(): print(k,v)
得:

dict_keys(['k2', 'k1'])
dict_values(['v2', 'v1'])
dict_items([('k2', 'v2'), ('k1', 'v1')])
k2
k1
v2
v1
k2 v2
k1 v1

 
    def keys(self): # real signature unknown; restored from __doc__
        """ D.keys() -> a set-like object providing a view on D's keys """
        pass

    def pop(self, k, d=None): # real signature unknown; restored from __doc__
        """
        D.pop(k[,d]) -> v, remove specified key and return the corresponding value.
        If key is not found, d is returned if given, otherwise KeyError is raised
        """
        pass
例:
dic = {'k1':'v1', 'k2':'v2'} dic.pop('k1')#pop 必须加一个参数 print(dic)
得:
{'k2': 'v2'}
随意拿走一对:
def popitem(self): # real signature unknown; restored from __doc__ """ D.popitem() -> (k, v), remove and return some (key, value) pair as a 2-tuple; but raise KeyError if D is empty. """ pass def setdefault(self, k, d=None): # real signature unknown; restored from __doc__ """ D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in D """ pass
例:
dic = {'k1':'v1', 'k2':'v2'} #dic['k3'] = 123 dic.setdefault('k3','v3') print(dic)
得:
{'k3': 'v3', 'k2': 'v2', 'k1': 'v1'}
    def update(self, E=None, **F): # known special case of dict.update
        """
        D.update([E, ]**F) -> None.  Update D from dict/iterable E and F.
        If E is present and has a .keys() method, then does:  for k in E: D[k] = E[k]
        If E is present and lacks a .keys() method, then does:  for k, v in E: D[k] = v
        In either case, this is followed by: for k in F:  D[k] = F[k]
        """
        pass

    def values(self): # real signature unknown; restored from __doc__
        """ D.values() -> an object providing a view on D's values """
        pass

 

 实例:

 1 all_list = [11,22,33,44,55,66,77,88,99]
 2 dic  = {}
 3 l1 = []
 4 l2 = []
 5 
 6 for i in all_list:
 7     if i > 66:
 8         l1.append(i)
 9     else:
10         l2.append(i)
11 
12 dic['k1'] = l1
13 dic['k2'] = l2
14 
15 print(dic)

改写:

 1 dic  = {}
 2 all_list = [11,22,33,44,55,66,77,88,99]
 3 for i in all_list:
 4     if i>66:
 5         if "k1" in dic.keys():
 6             dic['k1'].append(i)
 7         else:
 8             dic['k1'] = [i,]
 9     else:
10         if "k2" in dic.keys():
11             dic['k2'].append(i)#第二次进来K2是列表
12         else:
13             dic['k2'] = [i,]#第一次11进来、dic = {'k2':[11,]}
14 print(dic)
原文地址:https://www.cnblogs.com/mrzuo/p/7083849.html