python 有六种基本的数据类型,分别是:
Numbers 数字
String 字符串
List 列表
Tuple 元组
Set 集合(python3新增)
Dictionary 字典

在这六个基本数据中可变数据类型为:list,set,dictionary
不可变数据类型为:numbers,string,tuple
属于集合类型的数据为:list,tuple,set,dictionary
属于可迭代对象的为:string,list,tuple,set,dictionary

数字
数字基本数据类型又分为4种int、float、bool、complex
int 在python3中只有int一种整数类型,没有python2中的long了。

a=123
 print(type(a))
 输出 <class 'int'>

-float 小数,可以用十进制表示,也可以用指数表示

b=4.12
 print(type(b))
 <class 'float'>c=688e-2
 print(c)
 6.88

bool 布尔值true(1)和false(0),表示条件的真假,可以直接和数字相加

d = True
 print(d+4)
 5

-complex 复数由实数部分和虚数部分组成,一般形式为x+yj,其中x是复数的实数部分,
y是复数的虚数部分,这里的x和y都是实数

e = 1.25-1.3j
 print(type(e))
 <class 'complex'>

小整数池 是指[-5,127]之间的整数
如果要使用的整数对象在该范围内,其不会自动新建一个整数对象,而是看小整数池中是否有值相同的整数对象
如果有,则返回这个现有的整数对象
如果没有,则创建一个新的整数对象,这个新建的整数对象在以后也可能被共享使用

string python中使用引号括起来的都是字符串。字符串是不可变数据类型,所以不能修改。
字符串常见的操作有长度,索引,切片,分割
长度

f = 'abcxyz'
 print(len(f))
 6
 索引
 print(f[0])
 a
 切片
 print(f[3:6])
 xyz
 分割
 print(f.split('c'))
 ['ab', 'xyz']

list 列表是python中最常用的数据类型,用[]表示,元素可以是各种数据类型。

li = [True, [1, 2, 3], 'python', {'key': 'value'}]
 print(li[1])
 [1, 2, 3]
 增加元素
 li.append(6)
 print(li)
 [True, [1, 2, 3], 'python', {'key': 'value'}, 6]
 删除最后一个
 li.pop(-1)
 print(li)
 [True, [1, 2, 3], 'python', {'key': 'value'}]

tuple 由于列表可以进行增删改查,如果是非常重要的数据,就非常不安全。因此,就需要一种只能查看,无法增删改的列表,
那就是元组。元组以()进行定义。常见的元组操作有:索引、切片、循环、长度、包含等。操作和前面字符串、列表操作的类似

Set 集合是无序的、不重复的数据集合,它里面的元素是可hash的,但是集合本身是不可hash的。集合的目的就是将不同的值存放在一起,
和字典一样的{}括起来。可以用不同的集合来做关系运算。常见的集合操作有:增加、删除、交集、并集、差集等。

s = {'one', 'two', 'three'}
 在集合中增加内容
 s.update({'four', 'five'})
 print(s)
 {'one', 'two', 'four', 'three', 'five'}
 在集合中删除内容
 s.remove('one')
 print(s)
 {'two', 'three', 'five', 'four'}
 s2 = {'three', 'eight', 'ten'}
 交集
 print(s.intersection(s2))
 {'three'}
 差集
 print(s.difference(s2))
 {'four', 'two', 'five'}
 并集
 print(s.union(s2))
 {'five', 'eight', 'ten', 'four', 'three', 'two'}

dictionary 列表虽然可以存储大量的数据类型,但是操作起来速度会比较慢,而且,列表只能按照顺序存储,数据之间的关联性不强。
为了解决列表的短板,就需要字典,用系统内存换速度。字典以{}括起来,它是一个键(key) : 值(value) 的集合:
Key:不可变(可hash值)的数据类型,并且键是唯一的、不重复的。

Value:任意数据(int,str,bool,tuple,list,dict,set)等
 dic = {}
 dic['key'] = 'value'
 dic['numbers'] = [1, 2, 3]
 dic['apple'] = 6
 print(dic)
 {'key': 'value', 'numbers': [1, 2, 3], 'apple': 6}
 删除元素
 d.pop('key')
 print(dic)
 {'numbers': [1, 2, 3], 'apple': 6}
 遍历
 for key,value in dic.items():
     print(key,value)
 numbers [1, 2, 3]
 apple 6