1. Number(数字类型)
数字类型分为两种,整数和浮点数。在python中我们可以使用 type(变量) 函数查看某个数字属于哪种类型。
1.1 整数
在python中使用 int 表示整数
1.2 小数(也叫浮点数)
在python中使用 float 表示浮点数。如果你学习过其他语言,可能听过单精度和双精度,在其他语言了会使用 float 表示单精度的浮点数,使用 double 表述双精度的浮点数,但是在python不区分单精度和双精度,统一使用 float 表示小数。
注意了,在python 整数+浮点数 结果类型为浮点数。整数除以整数 结果为浮点数,但是在python3之前的版本中却不一样。例如,2/2 在 python3 结果为 1.0 ,结果是一个浮点数,但是在 python2 中结果为 1 ,是一个整数
2. Bool类型
Bool类型主要有两个,分别为:True(真)或 False(假) 。和其他语言一样,也是数字类型的一种,即 1 表示真, 0 表示假
注意了,True的首字母必须是大写,False也是如此。和其他语言不一样,如果使用小写会直接报错
在python中,提供了一个 bool() 函数转其他数据类型转 bool 类型,例如:
bool(0):数字 0 等同于 False
bool(1.11):数字只要不是 0 就都是 True
bool(""):空字符串等同于 False
bool([]):空列表等同于 False 否则为 True
bool({}):空元组等同于 False 否则为 True
3. 字符串类型
在python中我们通常都是以 单引号 或者 双引号 及 三引号 的方式来定义字符类型,如下所示:
# 单引号字符串
a = '字符a'
# 双引号字符串
b = "字符b"
# 三引号字符串
c = '''
三引号字符内容
'''
# 也可以使用三个双引号表示
d = """
双引号的三引号字符串
"""
注意:在python中三引号也可以用作注释。如果三引号没有变量接收时就是一个注释
三引号是多行注释,如果需要单行注释,可以使用 #
3.1 转义字符
在实际的工作中,我们经常会遇到转义字符问题,如果转义字符出现在字符串中,如何让转义字符以字符的模式输出呢?对于这个问题python提供了一种特殊的定义方式,在上面的字符前面加个 r ,表示原始字符。例如:
转义字符:主要是一些特殊字符,例如
\n:换行
\r:回车 \t:横向制表符
a = r'hello \n word'
print(a)
此时输出的就是 hello \n word 。当然我们也可以通过转义的方式实现原始输出,例如:
a = r'hello \\n word'
print(a)
3.2 字符串乘以某个数字
对于字符串而言,乘法是一个特殊的存在。在python中,字符串 * 某个数 n 时等同于将字符串内容重复 n 遍,例如:
a = 'hello'
print(a*3)
结果是:hellohellohello
注意,是三个hello
但是,如果使用 字符串 * 字符串时会直接报错
3.3 字符串加法
字符串本身不支持加法,在python中字符串的 加法 等同于 拼接,但是字符串不能与其他类型进行拼接,否则会报错 。例如:
print('aaa'+'bbb')
#打印结果:aaabbb
4. 列表(list)
python中的list等同于PHP语言中的数组的概念。其定义的方式如下:
#空列表
arr = []
#嵌套列表
arr = [[0,True],'测试数据']
列表的访问方式和PHP语言的数组是一样的,具体如下:
arr = [[0,True],'测试数据']
print(arr[1])
#打印结果:测试数据
列表的截取和字符串一样,具体如下:
arr = ['1111','测试数据','22222','33333']
#从索引 1 开始,截取到索引 2 结束,不包括索引 2
print(arr[1:2])
#打印结果:['测试数据']
#从索引 1 开始,截取到最后一位
print(arr[1:])
#打印结果:['测试数据','22222','33333']
列表和字符串一样,也支持乘法运算,结果和字符串比较相似,具体如下:
arr = ['1111','测试数据']
print(arr*3)
#打印结果:['1111','测试数据','1111','测试数据','1111','测试数据']
向列表中添加元素,具体方法如下:
arr = []
arr.append(4)
在python里面,如何判断某个元素是否在数组中呢?具体方式如下:
a = [1,2,3,4,'aaa']
if 'aaa' in a:
print('存在数组中')
else:
print('不存在数组中')
#打印结果为:存在数组中
#判断某个元素不在列表中的方式
if 'aaa' not in a:
print('存在数组中')
else:
print('不存在数组中')
在python语言中, : + 四个空格 类似于PHP中的花括号,这是python的语法
接下来,我们再来看看列表相关聚合查询的方式:
a = [1,2,3,4,5,'w']
#获取列表的长度
print(len(a))
#获取列表的最大值
print(max(a))
#获取列表的最小值
print(min(a))
#打印结果:6 w 1
大家会发现,最大值居然是 w ,这是为什么呢?
python会将字符串转义成 ascll 码后再进行比较大小,其中 w 的asccl码值是 119 ,这一点其实和其他大多数语言是一样的。
如果大家不知道字符的ascll值,可以使用 ord('w') 查看ascll码值
5. 元组(tuple)
在python中,有一个和列表很相似数据结果,他叫元组。不同的是,元组定义后不能进行动态新增定义的格式如下:
#空元组
a = ()
#普通元组
b = (1,2,3,4,5,6)
#嵌套元组
c = ((1,2,3),'测试',('sss','vvv'))
除了上面通过()的定义的方式,python还有一种方式可以定义元组:
a = 1,2,3
这种方式定义的变量a ,默认就是元组。大家可以通过print(type(a))查看变量的类型
元组的访问、截取及乘法运算的方式和列表一样,具体如下:
b = (1,2,3,4,5)
print(b[0]) #打印结果:1
print(b[1:4]) #打印结果:(2,3,4)
print(b*2) #打印结果:(1,2,3,4,5,1,2,3,4,5)
print(b+(22,33)) #打印结果:(1,2,3,4,5,22,33)
python的元组有一个特性,需要注意一样。如果元组的内部只有一个元素时,元组会自动转换类型为元素本身的数据类型,具体体现如下:
a = (1)
print(type(a)) #打印类型结果为整型:int
b = ('aaaa')
print(type(b)) #返回的类型结果为字符串:str
这是因为,python把元组定义的 () 当成了数学运算中的括号,如果我们想要定义一个只有一个元素的元组时,可以这么定义:
a = (1,)
b = ('aaa',)
print(type(a)) #打印结果:tuple
print(type(b)) #打印结果:tuple
6. 集合(set)
python中的集合类型与redis中的集合,也就是我们高中时期数学中的集合,他是一组不重复的元素合集。注意了,python中的集合是无序的,所以我们无法通过索引下标的方式进行访问,更无法通过索引下标进行截取。集合定义的方式如下:
data = {1,2,3,4,5}
#定义空集合
null_data = set()
注意:空集合是使用 set 函数实现,不能直接使用 {} 定义。{} 这种形式是空字典
python的集合提供了不少交集、差集、并集等相关运算方式,具体如下:
set_data = {1,2,3,4}
#判断某个元素是否在集合中
print(5 in set_data)
print(3 not in set_data)
#两个集合的交集
print(set_data & {2,3})
#计算两个集合的差集
print(set_data - {1,4}) #打印结果:False False {2,3} {2,3}
#计算两个集合的并集
print({1,2,3,4,5,6} | {2,4,5,6,7,8,9}) #打印结果:{1,2,3,4,5,6,7,8,9}
7. 字典(dict)
字典和集合有点相似,不同的是字典中的元素是由key和value构成,有着特殊的形式。定义的格式如下:
a = {key1:value1,key2:value2,...}
看上去和 js 中的 json 格式的数据一模一样,操作形式基本也是一致:
a = {'a':'测试','b':'测试2'}
print(a['a']) #打印结果:测试
领取专属 10元无门槛券
私享最新 技术干货