python变量类型

                    Python 变量类型

变量存储在内存中的值。这就意味着在创建变量时会在内存中开辟一个空间。

基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。

因此,变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符。


  • python变量赋值

    Python中的变量不需要声明,变量的赋值操作既是变量声明和定义的过程。

    每个变量在内存中创建,都包括变量的标识,名称和数据这些信息。

    每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。

    等号(=)用来给变量赋值。


  • 数据类型

    python 5个数据类型


    • Numbers(数字)--->int

    • string(字符串)   --->str

    • list(列表)     --->list

    • Dictionary(字典)-->dict

    • Tuple(元组)      --->tuple

  •  字符串  

    字符串或串(String)是由数字、字母、下划线组成的一串字符。

    它是编程语言中表示文本的数据类型。

    python的字串列表有2种取值顺序:

  • 从左到右索引默认0开始的,最大范围是字符串长度少1

  • 从右到左索引默认-1开始的,最大范围是字符串开头

  • 列表

    1.切片

    List(列表) 是 Python 中使用最频繁的数据类型。

    列表可以完成大多数集合类的数据结构实现。它支持字符,数字,字符串甚至可以包含列表(所谓嵌套)。

    列表用[ ]标识。是python最通用的复合数据类型。

    列表切片为左开有合(下标从0开始)

>>> list = [ 'abcd', 786 , 2.23, 'john', 70.2 ]
>>> list[0:2]        #取前两个数据
['abcd', 786]
>>> list[:2]         #默认从0开始
['abcd', 786]
>>> list[::2]       #后面的2是代表,每隔一个元素,就取一个
['abcd', 2.23, 70.2]
>>> list[4:]        #取最后一个,不能写-1
[70.2]

    2.增加

>>> name.append("e")       #添加到最后
>>> name
['a', 'c', 'b', 'd', 'e']
>>> name.insert(1,"f")     #添加到指定位置
>>> name
['a', 'f', 'c', 'b', 'd', 'e']

    3.删除

>>> del name[2]              #删除列表位置
>>> name
['a', 'f', 'b', 'd', 'e']    
>>> name.remove("e")         #删除列表内容
>>> name
['a', 'f', 'b', 'd']
>>> name.pop()               #删除最后一个
'd'
>>> name
['a', 'f', 'b']

    4.更改

>>> name
['a', 'f', 'b']
>>> name[2] = "e"
>>> name
['a', 'f', 'e']

    5.追加

>>> name
['a', 'f', 'e']
>>> name.append("d")
>>> name
['a', 'f', 'e', 'd']

    6.扩展

>>> name
['a', 'f', 'e', 'd']
>>> num
[1, 2, 3]
>>> name.extend(num)
>>> name
['a', 'f', 'e', 'd', 1, 2, 3]
>>> num
[1, 2, 3]

    7.获取下标

['a', 'f', 'e', 'd', 1, 2, 3]
>>> name.index(1)
4
  • 字典

    字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。

    两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

    字典用"{ }"标识。字典由索引(key)和它对应的值value组成。

        字典的特性:

    dict是无序的

    key必须是唯一的,so 天生去重

>>> dict = {'dept': 'sales', 'code': 6734, 'name': 'john'}
>>> for i in dict:
...    print(i,dict[i])
... 
code 6734
dept sales
name john
>>> for i,v in dict.items(): #先把dict转成list,数据里大时莫用
...    print(i,v)
... 
code 6734
dept sales
name john

    

    更新和删除:

     直接用键值访问更新:内建的update()方法可以将整个字典的内容拷贝到另一个字典中

 

    del dic['a'] 删除字典中键值为a的元素
    dic.pop('a')    删除并返回键为'a'的元素
    dic.clear()      删除字典所有元素
    del dic            删除整个字典

    字典中的函数:
    len(),hash()        用于判断某个对象是否可以做一个字典的键,非哈希类型报TypeError错误。
    dict.clear()         删除字典中的所有元素(字典变成空字典,但字典仍然存在)
    dict.fromkeys(seq,value=None)        以seq中的元素为键创建并返回一个字典,val为指定的默认值
    dict.get(key,default=None)                返回key的value,如果该键不存在返回default指定的值
    //dict.has_key(key)     【python2】           判断字典中是否存在key,建议使用in和not in代替
    dict.items()                        返回键值对元组的列表
    dict.keys()                            返回字典中键的列表
    dict.setdefault(key,default=None)            同set(),若key存在则返回其value,若不存在,则            dict[key]=default
    dict.update(dict2)                将dict2中的键值对添加到字典dict中,如果有重复覆盖,原字典不存在的条码添加进去
    dict.values()                返回字典中所有值的列表


    字典用法:

    1. clear : 清空字典中的项

   >>> ddict={}.fromkeys(('x','y'),-1)
    >>> ddict.clear()
    >>> ddict
    {}

   2.fromkeys

    使用给定的键建立新的字典,每个键默认对应的值为None

    >>> dict.fromkeys(['name','keys'])
   {'a': 'keys', 'n': 'keys', 'e': 'keys', 'm': 'keys'}

    3.get

    是个更加宽松的访问字典项的方法,一般来说,如果试图访问字典中不存在的项会出错

    >>> d
    {'name': ['huazai', 'patrick', 'abc']}
    >>> print d['names']
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    KeyError: 'names'
    >>> print d.get('names')    #无输出

    6.setdefault

    在某种程度上类似于get 方法,就是能够获得与给定键相关联的值,除此之外,setdefault 还能在字典中不含有给定键的情况下设置相应的键值。

    >>> d={}
    >>> d.setdefault('name','N/A')
    'N/A'
    >>> d
    {'name': 'N/A'}
    >>> d['name'] = 'pdadwa'
    >>> d
    {'name': 'pdadwa'}
    >>> d.setdefault('name','N/A')
    'pdadwa'
    >>> d
    {'name': 'pdadwa'}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章