Python--数据类型
- <font color=blue >一、数据的分类
- <font color=blue >二、数值类型
- <font color=blue >1、整型:int
- <font color=blue >2、浮点型:float
- <font color=blue >3、复数类型:complex
- <font color=blue >三、布尔类型:bool
- <font color=blue >四、字符串:str
- <font color=blue >五、列表:list
- <font color=blue >六、元组:tuple
- <font color=blue >七、集合:set
- <font color=blue >八、字典:dict
一、数据的分类
Python 默认拥有以下内置数据类型:
Python中的内置函数id()可以查看数据类型。
Python中的数据类型根据物理地址是否会发生变化分为可变数据类型和不可变数据类型。
可变数据类型:当该数据类型对应的变量的值发生变化时,其对应的内存地址不会发生改变
不可变数据类型:当该数据类型对应的变量的值发生变化时,其对应的内存地址会发生改变
可以这样理解可变和不可变:假设现在有一个汽车展台,这个展台就是内存地址(物理地址),汽车就是数据。这个展台上可以展示奥迪汽车,也可以展示奇瑞汽车(即数据发生变化,但是物理地址并没有变),也就是说展示的东西可以发生变化,但是展台不变,这个就叫可变。如果是不可变,就意味着展台上的东西不能发生变化,如果展台上的东西要发生变化,那么就必须要换展台,即展示奥迪车用的就是A展台,展示奇瑞车就需要变成另外的B展台了。
例1:可变数据类型列表的一个例子
#这里列表a就是展台
a = ['奥迪']
print('奥迪的地址为:', id(a))
a[0] = '奇瑞'
print('奇瑞的地址为:', id(a))
输出:
从输出可以看到,展台上的展品从奥迪变成了奇瑞,但是展台没有变。
例2:不可变数据类型字符串的一个例子
#这里变量a就是展台
a = '奥迪'
print('奥迪的地址为:', id(a))
a = '奇瑞'
print('奇瑞的地址为:', id(a))
输出:
从输出可以看到,展台上的展品发生变化,展台也会变。
二、数值类型
1、整型:int
整型,即整数类型
a = 10 #正整数
b = 0 #0
c = -10 #负整数
2、浮点型:float
浮点型,即小数类型。小数如果用科学计数法表示,如130.0可以表示成1.3×102,
也可写成0.13×103,可以看到小数点是漂浮不定的,所以小数类型也叫浮点型。
浮点数也可以是带有“e”的科学数字,表示 10 的幂。
x = 27e4
y = 15E2
z = -49.8e100
3、复数类型:complex
复数用 “j” 作为虚部:
x = 2+3j
y = 7j
z = -7j
三、布尔类型:bool
布尔类型只有两个值:True和False。 if 语句中运行条件时,Python 返回 的就是True 或 False。
a = 200
b = 33
if b > a: #b > a就是条件,这个条件最终的值是bool类型,b > a成立时值为True,否则,值为False
print("b is greater than a")
else:
print("b is not greater than a")
四、字符串:str
用英文的一对单引号(‘’)或双引号(“”)将字符包括起来,就是字符串。如:
'hello@%^&123' #使用单引号将字符括起来
"hello@%^&123" #使用双引号将字符括起来
有单引号和双引号两种形式的原因如下:
'That's ringht'
#在这个字符串中,That后面的单引号是单词中的一部分,
#但是Python解释器会认为这个单引号是字符串结束的标志,即认为'That'是一个字符串
#所以在这种情况下,想要让解释器正确认识这个字符串,就需要将单引号换成双引号。
"That's right" #这样就不会引起误会了
字符串还有两种形式:
1.用一对三个英文的单引号:‘’’ ‘’’
2.用一对三个英文的双引号:“”" “”"
'''hello''' #一对三个英文的单引号
"""hello""" #一对三个英文的双引号
应用场景:有时候字符串比较长,如果要换行,就可以用到这两种形式的字符串。
b = '''this
is
a
test'''
print(b)
输出:
五、列表:list
是一种有序和可更改的集合。允许重复的成员。
六、元组:tuple
是一种有序且不可更改的集合。允许重复的成员。
七、集合:set
是一个无序和无索引的集合。没有重复的成员。
八、字典:dict
是一个无序,可变和有索引的集合。没有重复的成员。