Python3基础(一)数据类型

Python3 中有六个标准的数据类型:

  1. Number(数字)
  2. String(字符串)
  3. List(列表)
  4. Tuple(元组)
  5. Dictionary(字典)
  6. Set(集合)

其中有三个数据类型可变,三个数据类型不可变:

  1. 不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组)
  2. 可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)变数据类型和不可变数据类型

数据类型可变和不可变的定义:

可变数据类型:value值改变,id值不变;不可变数据类型:value值改变,id值也随之改变。

可以用id()函数查看变量id值是否变化的方式判断数据类型是可变还是不可变。

(一)Number 数字

数字数据类型有整数(int)、浮点数(float)、布尔值(bool)、复数(complex)

注意:在Python 3里,只有一种整数类型 int,表示为长整型,没有 python2 中的 Long。

数值类型实例:

int float complex
10 0.0 3.14j
100 15.20 45.j
-786 -21.9 9.322e-36j
080 32.3e+18 .876j
-0490 -90. -.6545+0J
-0x260 -32.54e100 3e+26J
0x69 70.2E-12 4.53e-7j

Python还支持复数,复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型

(二)String 字符串

字符串是由单引号' '或者双引号" "括起来的的任意文本。

比如创建一个变量并且给它赋一个值

str = 'str'

输出的就是str

(三)List 列表

list是一种有序的集合,可以随时添加和删除其中的元素。

例如创建一个变量

>>> friend=['Jack','Lisa','Moinca']

可以用len()函数获取friend有多少个元素

>>> len(friend)
>>> 3

可以用索引来访问list中每一个位置的元素,索引从0开始

>>> friend[0]
>>> 'Jack'

 如果要取最后一个元素,可以用-1做索引,倒数第二个用-2,以此类推

>>> friend[-1]
>>> 'Moinca'

list是一个可变的有序表,所以,可以用append()方法往list中追加元素到末尾

>>> friend.append('write')
>>> friend
>>> ['Jack', 'Lisa', 'Moinca', 'write']

也可以用insert()方法把元素插入到指定的位置,比如索引号为1的位置

>>> friend.insert(1,'Ellen')
>>> friend
>>> ['Jack', 'Ellen', 'Lisa', 'Moinca', 'write']

要删除list末尾的元素,用pop()方法

>>> friend.pop()
>>> 'write'
>>> friend
>>> ['Jack', 'Ellen', 'Lisa', 'Moinca']

 要把某个元素替换成别的元素,可以直接赋值给对应的索引位置:

>>> friend[1] = 'Alex'
>>> friend
>>> ['Jack', 'Alex', 'Lisa', 'Moinca']

list里面的元素可以有不同的数据类型

>>> str1 = ['Jack', 25, False]
>>> str1
>>> ['Jack', 25, False]
# python对大小写敏感,这里False写成false会报错

 list元素也可以是一个list

>>> str2 = [1, 2, 3, [4, 5], 6]
>>> str2
>>> [1, 2, 3, [4, 5], 6]

要注意这里的str2的元素只有5个,拆分开来就是把一个变量当成一个元素放入另一个变量里面

>>> len(str2)
>>> 5
>>> str3 = [4, 5]
>>> str4 = [1, 2, 3, str3, 6]
>>> str4
>>> [1, 2, 3, [4, 5], 6]

 如果一个list中一个元素也没有,就是一个空的list,它的长度为0

>>> str5 = []
>>> len(str5)
>>> 0

 

(四)Tuple 元组

有序列表叫元组:tuple。tuple和list类似,可tuple一旦初始化就不能修改

>>> friend=('Jack','Lisa','Moinca')

现在friend所指向的tuple是不能改变的,它也没有append(),insert()这样的方法。其他获取元素的方法和list是一样的,你可以正常地使用friend[0],friend[-1],但不能赋值成另外的元素。

>>> friend[0]
>>> 'Jack'

因为tuple不可变,所以代码更安全。如果可能,能用tuple代替list就尽量用tuple。

不过当tuple的元素是list时,这个list时可以改变的。

>>> tup = ('Jack', 1, [1, 2], True)
>>> tup
>>> ('Jack', 1, [1, 2], True)
>>> tup[2][0] = 'Monica'
>>> tup
>>> ('Jack', 1, ['Monica', 2], True)

 

(五)Dictionary 字典

字典是另一种可变容器模型,且可存储任意类型对象。

字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号{}中

>>> d1 = {1 : 'Jack', 2 : 'Monica', 3 : 'Ellen'}
>>> d1
>>> {1: 'Jack', 2: 'Monica', 3: 'Ellen'}

 可以用key找出对应的value

>>> d1[1]
>>> 'Jack'

 

(六)Set 集合

 

set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。

>>> s = set([1,2,3,3])
>>> s
>>> {1, 2, 3}

通过add(key)方法可以添加元素到set中,可以重复添加,但不会有效果

>>> s.add(5)
>>> s
>>> {1, 2, 3, 5}

通过remove(key)方法可以删除元素

>>> s.remove(5)
>>> s
>>> {1, 2, 3}

set可以看成数学意义上的无序和无重复元素的集合,因此,两个set可以做数学意义上的交集、并集等操作

>>> s1 = set([1, 2, 3, 4])
>>> s2 = set([7, 4, 2, 3])
>>> s1 & s2
>>> {2, 3, 4}
>>> s1 | s2
>>> {1, 2, 3, 4, 7}

 

 

你可能感兴趣的:(python)