python元组与字典的详细介绍

一、元组

1.元组的表达

(1,2,3,4)('olive',123)("python",)

登录后复制

创建元组:

a=tuple((1,2,3,))b=("python",)

登录后复制

2.元组功能属性

class tuple(object):    """    tuple() -> empty tuple    tuple(iterable) -> tuple initialized from iterable's items        If the argument is a tuple, the return value is the same object.    """    def count(self, value): # real signature unknown; restored from __doc__        """ T.count(value) -> integer -- return number of occurrences of value """        return 0    def index(self, value, start=None, stop=None): # real signature unknown; restored from __doc__        """        T.index(value, [start, [stop]]) -> integer -- return first index of value.        Raises ValueError if the value is not present.        """        return 0    def __add__(self, *args, **kwargs): # real signature unknown        """ Return self+value. """        pass    def __contains__(self, *args, **kwargs): # real signature unknown        """ Return key in self. """        pass    def __eq__(self, *args, **kwargs): # real signature unknown        """ Return self==value. """        pass    def __getattribute__(self, *args, **kwargs): # real signature unknown        """ Return getattr(self, name). """        pass    def __getitem__(self, *args, **kwargs): # real signature unknown        """ Return self[key]. """        pass    def __getnewargs__(self, *args, **kwargs): # real signature unknown        pass    def __ge__(self, *args, **kwargs): # real signature unknown        """ Return self>=value. """        pass    def __gt__(self, *args, **kwargs): # real signature unknown        """ Return self>value. """        pass    def __hash__(self, *args, **kwargs): # real signature unknown        """ Return hash(self). """        pass    def __init__(self, seq=()): # known special case of tuple.__init__        """        tuple() -> empty tuple        tuple(iterable) -> tuple initialized from iterable's items                If the argument is a tuple, the return value is the same object.        # (copied from class doc)        """        pass    def __iter__(self, *args, **kwargs): # real signature unknown        """ Implement iter(self). """        pass    def __len__(self, *args, **kwargs): # real signature unknown        """ Return len(self). """        pass    def __le__(self, *args, **kwargs): # real signature unknown        """ Return self<=value. """        pass    def __lt__(self, *args, **kwargs): # real signature unknown        """ Return self<value. """        pass    def __mul__(self, *args, **kwargs): # real signature unknown        """ Return self*value.n """        pass    @staticmethod # known case of __new__    def __new__(*args, **kwargs): # real signature unknown        """ Create and return a new object.  See help(type) for accurate signature. """        pass    def __ne__(self, *args, **kwargs): # real signature unknown        """ Return self!=value. """        pass    def __repr__(self, *args, **kwargs): # real signature unknown        """ Return repr(self). """        pass    def __rmul__(self, *args, **kwargs): # real signature unknown        """ Return self*value. """        passtuple

登录后复制

3.元组的部分功能属性介绍

元组和列表有很大相似性,但是元组的元素是不可修改的,所以很多列表有的功能元组都没有。

1)count(self, value):

统计元组中包含value元素的数量,返回一个int值。

a=(1,2,3,4,1,2,3,1,2,)b=a.count(1)print(a,type(a))print(b,type(b))#运行结果(1, 2, 3, 4, 1, 2, 3, 1, 2) 3 demo

登录后复制

2)index(self, value, start=None, stop=None):

索引,查找元组中value元素第一个出现的位置,start与stop参数是查找起始与结束位置,默认为None,返回int数值,如果查找中不包含这个元素,则返回ValueError: ‘f’ is not in tuple报错。

a=(1,2,3,4,1,2,3,1,2,)b=a.index(3)print(a,len(a))print(b,type(b))#运行结果(1, 2, 3, 4, 1, 2, 3, 1, 2) 92 demo

登录后复制

3)add(self, *args, **kwargs):

给元组添加一个新的元素,添加的新元素需要以元组的形式添加,生成一个新的元组。

a=(1,2,3,4)b=a.__add__((5,1))   #括号理给出的必须是元组print(a,type(a))print(b,type(b))#运行结果(1, 2, 3, 4) (1, 2, 3, 4, 5, 1) demo

登录后复制

4)contains(self, *args, **kwargs):

判断元组中是否包含某个元素,返回布尔值。

a=(1,2,3,4,1,2,3,1,2,)b=a.__contains__(2)c=a.__contains__(5)print(a)print(b)print(c)#运行结果(1, 2, 3, 4, 1, 2, 3, 1, 2)TrueFalsedemo

登录后复制

二、字典

1.字典的表达

{"name":"olive","age":18}

登录后复制

创建字典:

a={"name":"olive","age":18}b=dict({"name":"lusi","age":18})

登录后复制

2.字典功能属性

class dict(object):    """    dict() -> new empty dictionary    dict(mapping) -> new dictionary initialized from a mapping object's        (key, value) pairs    dict(iterable) -> new dictionary initialized as if via:        d = {}        for k, v in iterable:            d[k] = v    dict(**kwargs) -> new dictionary initialized with the name=value pairs        in the keyword argument list.  For example:  dict(one=1, two=2)    """    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    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    def items(self): # real signature unknown; restored from __doc__        """ D.items() -> a set-like object providing a view on D's items """        pass    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    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    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    def __contains__(self, *args, **kwargs): # real signature unknown        """ True if D has a key k, else False. """        pass    def __delitem__(self, *args, **kwargs): # real signature unknown        """ Delete self[key]. """        pass    def __eq__(self, *args, **kwargs): # real signature unknown        """ Return self==value. """        pass    def __getattribute__(self, *args, **kwargs): # real signature unknown        """ Return getattr(self, name). """        pass    def __getitem__(self, y): # real signature unknown; restored from __doc__        """ x.__getitem__(y)  x[y] """        pass    def __ge__(self, *args, **kwargs): # real signature unknown        """ Return self>=value. """        pass    def __gt__(self, *args, **kwargs): # real signature unknown        """ Return self>value. """        pass    def __init__(self, seq=None, **kwargs): # known special case of dict.__init__        """        dict() -> new empty dictionary        dict(mapping) -> new dictionary initialized from a mapping object's            (key, value) pairs        dict(iterable) -> new dictionary initialized as if via:            d = {}            for k, v in iterable:                d[k] = v        dict(**kwargs) -> new dictionary initialized with the name=value pairs            in the keyword argument list.  For example:  dict(one=1, two=2)        # (copied from class doc)        """        pass    def __iter__(self, *args, **kwargs): # real signature unknown        """ Implement iter(self). """        pass    def __len__(self, *args, **kwargs): # real signature unknown        """ Return len(self). """        pass    def __le__(self, *args, **kwargs): # real signature unknown        """ Return self<=value. """        pass    def __lt__(self, *args, **kwargs): # real signature unknown        """ Return self size of D in memory, in bytes """        pass    __hash__ = Nonedict

登录后复制

3.字典的部分功能属性介绍
1)clear(self):

清除字典中的所有元素。

a={"name":"olive","age":18}b=a.clear()print(a)print(b)#运行结果{}None

登录后复制

2)copy(self):

复制一份元组,相当于一次浅拷贝。 

a={"name": "olive","age":18}b=a.copy()print(a,id(a),id("name"))print(b,id(b),id("name"))#赋值c={"name": "lusi","age":18}d=cprint(c,id("name"))print(d,id("name"))#浅拷贝e={"name": "shy","age":18}f=copy.copy(e)print(e,id(e),id("name"))print(f,id(f),id("name"))#运行结果{'name': 'olive', 'age': 18} 2915224 2019840{'name': 'olive', 'age': 18} 2915304 2019840{'name': 'lusi', 'age': 18} 2019840{'name': 'lusi', 'age': 18} 2019840{'name': 'shy', 'age': 18} 5584616 2019840{'name': 'shy', 'age': 18} 5586056 2019840

登录后复制

3)fromkeys(*args, **kwargs):【fromkeys(seq,value=None)】

创建一个新的字典,以seq为字典的keys(键),value为字典的值,默认为None。适合创建一个一样值的字典。

a={"hunan": "changsha","guangdong":"guangzhou","jiangsu":"nanjing",'hubei':"wuhan"}b=dict.fromkeys(a,"good")c=dict.fromkeys(["a","b","c"],"abc")d=dict.fromkeys("abcc")           print(a)print(b)print(c)print(d)#运行结果{'guangdong': 'guangzhou', 'hubei': 'wuhan', 'hunan': 'changsha', 'jiangsu': 'nanjing'}{'hubei': 'good', 'guangdong': 'good', 'hunan': 'good', 'jiangsu': 'good'}{'c': 'abc', 'b': 'abc', 'a': 'abc'}{'c': None, 'b': None, 'a': None}   #seq给出的字符串c是重复的,但是创建的键只取一个。

登录后复制

 4)get(self, k, d=None):

获取字典中键为k的值,如果字典中不包含k,则给出d值,d默认为None。

a={"a":1,"b":2,"c":3,"d":4}b=a.get("a")c=a.get("e")d=a.get("e",5)print(a)print(b)print(c)print(d)#运行结果{'b': 2, 'a': 1, 'c': 3, 'd': 4}1None5

登录后复制

5)items(self):

遍历字典的一个方法,把字典中每对key和value组成一个元组,并把这些元组放在一个类似列表的dict_items中返回。

a={"a":1,"b":2,"c":3,"d":4}b=a.items()print(a)print(b,type(b))#运行结果{'d': 4, 'c': 3, 'a': 1, 'b': 2}dict_items([('d', 4), ('c', 3), ('a', 1), ('b', 2)]) 

登录后复制

6)keys(self):

遍历字典键keys的一个方法,返回一个类似列表的dict_keys,与items方法用法相同。

a={"a":1,"b":2,"c":3,"d":4}b=a.keys()print(a)print(b,type(b))#运行结果{'b': 2, 'a': 1, 'c': 3, 'd': 4}dict_keys(['b', 'a', 'c', 'd']) 

登录后复制

7)values(self):

遍历字典值value的一个方法,返回一个类似列表的dict_values,与items方法用法相同。

a={"a":1,"b":2,"c":3,"d":4}b=a.values()print(a)print(b,type(b))#运行结果{'c': 3, 'd': 4, 'b': 2, 'a': 1}dict_values([3, 4, 2, 1]) 

登录后复制

8)pop(self, k, d=None):

和get方法用法相似,只不过,get是获取字典中键为k的值,而pop是取出字典中键为k的值。当字典中不含键k时,d不是默认值时,取到的值就为d值,如果d为默认值None时,则KeyError报错。

a={"a":1,"b":2,"c":3,"d":4}b=a.pop("a")c=a.pop("e","five")print(a)print(b,type(b))print(c,type(c))#运行结果{'c': 3, 'd': 4, 'b': 2}1 five 

登录后复制

9)popitem(self):

从字典中随机取出一组键值,返回一个新的元组。如果字典中无键值可取,则KeyError报错。

a={"a":1,"b":2,"c":3,"d":4}b=a.popitem()print(a)print(b,type(b))#运行结果{'d': 4, 'b': 2, 'a': 1}('c', 3) 

登录后复制

10)setdefault(self, k, d=None):

从字典中获取键为k的值,当字典中包含键k值时,功能和get基本一致,当字典中不包含键k值时,在原字典上添加上键为k的初始键值对,并返回值d。

a={"a":1,"b":2,"c":3,"d":4}b=a.setdefault("a")c=a.setdefault("e")d=a.setdefault("f",6)print(a)print(b)print(c)print(d)#运行结果{'f': 6, 'c': 3, 'a': 1, 'e': None, 'b': 2, 'd': 4}1None6

登录后复制

11)update(self, E=None, **F):

给字典新增元素,没有返回值。用法:dict.update(dict2)。

a={"a":1,"b":2,"c":3,"d":4}b=a.update({"e":5})print(a)print(b)#运行结果{'c': 3, 'b': 2, 'd': 4, 'a': 1, 'e': 5}None

登录后复制

12)contains(self, *args, **kwargs):

判断列表中是否包含某个键值对,返回布尔值。用法:dict.contains(keys)。

a={"a":1,"b":2,"c":3,"d":4}b=a.__contains__("a")print(a)print(b)#运行结果{'a': 1, 'd': 4, 'c': 3, 'b': 2}True

登录后复制

13)delitem(self, *args, **kwargs):

删除字典中的某个键值对,没有返回值。用法:dict.delitem(keys)。

a={"a":1,"b":2,"c":3,"d":4}b=a.__delitem__("a")print(a)print(b)#运行结果{'c': 3, 'b': 2, 'd': 4}None

登录后复制

以上就是python元组与字典的详细介绍的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2276112.html

(0)
上一篇 2025年2月27日 14:58:02
下一篇 2025年2月26日 06:06:08

AD推荐 黄金广告位招租... 更多推荐

发表回复

登录后才能评论