最近一直在用python做一些实验,都是一边百度一边写代码,最后代码是写完了,可是回过头一想,感觉知识很零碎。没有构成体系,所以决定写个系列博客,把一些基础知识梳理记录下来,主要是帮助自己加深理解,构建起系统的知识体系,从数据类型开始吧。版本为python3.6

    Python标注数据类型


    Python在使用的时候,给人最大的感觉就是不用去管复杂的数据类型,极为方便。


    Python一共定义了五种标准数据类型:

    Numbers(数字)

    String(字符串)

    List(列表)

    Tuple(元组)

    Dictionary(字典)

    Numbers(数字)

    Numbers一共支持四种数字类型:

    int(有符号整型)    e: 2

    long(长整型)    e: 6778L

    float(浮点数)    e: 3.888

    complex(复数)    e: 4e+4j

    String(字符串)

    字符串是由数字、字母、下划线组成的一串字符

    s = 'my name is John'

    b = 'OK!'

    字符串列表取值有两种方法:

    从左到右,默认开始索引为0

    从右到左,默认开始索引为-1

    如:s[0:1] 的结果为 my ,s[-4:-1] 的结果为 Joh ,s[-4:] 的结果为 John

    字符串拼接直接用 ‘+’ 就行,如: a = s + ' ' + b 结果为:‘my name is John OK!’

    List(列表)

   列表用方括号标识 [] ,中间用','隔开

    赋值方法:L = ['my', 'name', 'is', 'John']

    取值:L[1]结果为 name,L[1:3] 结果为 ['is', 'John']

    常用方法:

L.append(var)          #追加元素
L.insert(index,var)
L.pop(var)               #返回最后一个元素,并从list中删除之
L.remove(var)            #删除第一次出现的该元素
L.count(var)             #该元素在列表中出现的个数
L.index(var)             #该元素的位置,无则抛异常
L.extend(list6)         #追加list6,即合并list到L上,这里注意,使用extend函数可以一次在一个列表中插入任意多个值,而不必须每次只使用append()一次一值的插入
L.sort()        #排序
L.reverse()     #倒序
del L[1]        #删除指定下标的元素
del L[1:3]      #删除指定下标范围的元素

#复制list:
L1 = L      #L1为L的别名,用C来说就是指针地址相同,对L1操作即对L操作。
L1 = L[:]   #L1为L的克隆,即另一个拷贝。

    Tuple(元组)

    元组用圆括号标识:() 用逗号','隔开

    赋值方法:T = ('my', 'name', 'is', 'John')

    当元组中只有一个元素时应这么写:T = (123,),这是为了与数学符号中的括号区分

    取值:T[1]结果为 name,T[1:3] 结果为 ['is', 'John']

    元组是只读的,定义后里面的内容不能修改,但可以用del语句将整个元组删除:

    Dictionary(字典)

    字典用大括号标识:{key1:value1,key2:value2,…}

    字典是用键来存取的,是无序的

    赋值方法:    

d = {'name':'John','age':11,'sex':'man'}
dict = {}
dict['name'] = 'John'

    常用方法:

dict.keys()    #dict_key形式返回所有的KEY,
dict.values()    #dict_value返回所有的value

相互转换

dict to list
list_key = [key for key in dict.keys()]    #将所有key以列表形式返回
list_value = [value for value in dict.values()]    #将所有value以列表形式返回

list to dict

list = [['name','john'],['age',10]]    #二维列表
d = dict(list)    #直接转换,输出 d = {'name':'john','age':10}