数据类型及常用方法
引入
我们学习变量是为了让计算机能够像人一样去记忆事物的某种状态,而变量的值就是用来存储事物状态的,很明显事物的状态分成不同种类的(比如人的年龄,身高,职位,工资等等),所以变量值也应该有不同的类型。
数据类型有:整型、浮点型、字符串、列表、字典、布尔值、元组、集合
一、整型int
1.1作用
用来记录人的年龄,出生年份,学生人数等整数相关的状态
1.2定义
age = 18
student_count = 60
二、浮点型float
2.1作用
用来记录人的身高,体重,薪资等小数相关的状态
1.0也是浮点型
2.2定义
height=172.3
weight=103.5
整型和浮点型可以统称为数值型Number
三、字符串类型str
3.1作用
用来记录一些描述性信息 eg:姓名 地址 邮箱...
3.2定义
用引号引起来的部分
name = 'kevin'
name = "kevin"
name = '''kevin'''
name = """kevin"""
使用多引号时要注意,当左边有赋值符号和遍历名的时候,它就是字符串,左边什么都没有时,它就是注释.
用单引号、双引号、多引号,都可以定义字符串,本质上是没有区别的,但是
# 1.引号套用的情况下,外面是单引号里面就要是双引号,外面是双引号里面就要是单引号'''
res = '洋哥说:“趁年轻,学技能,养活自己”'
res = "洋哥说:'趁年轻,学技能,养活自己'"
# 2.多引号可以写多行字符串
msg = '''天下只有两种人。比如一串葡萄到手,一种人挑最好的先吃,另一种人把最好的留到最后吃。
照例第一种人应该乐观,因为他每吃一颗都是吃剩的葡萄里最好的;第二种人应该悲观,因为他每吃一颗
都是吃剩的葡萄里最坏的。不过事实却适得其反,缘故是第二种人还有希望,第一种人只有回忆。
'''
3.3使用
字符串可以进行“相加”和“相乘”的运算
a = 'tony'
b = 'kevin'
print(a + b) # 相加其实就是简单的字符串拼接
# 输出 tonykevin
print(a * 5) # 相乘就相当于将字符串相加了5次
# 输出 tonytonytonytonytony
四、列表list
4.1作用
如果我们需要用一个变量记录多个学生的姓名,用数字类型是无法实现,字符串类型确实可以记录下来,比如
stu_names='张三 李四 王五',但存的目的是为了取,此时若想取出第二个学生的姓名实现起来相当麻烦,而列表类型就是专门用来记录多个同种属性的值(比如同一个班级多个学生的姓名、同一个人的多个爱好等),并且存取都十分方便
4.2定义
中括号括起来,内部可以存放多个元素,元素与元素之间使用逗号隔开,可以是任意的数据类型和嵌套
names_list = ['张三', '李四', '王五']
l = [1, 1.1, 'kevin', [666, 777, 888, 'tony', [22,33, 'kevinNB']]]
4.3使用
names_list = ['张三', '李四', '王五']
# 1、列表取值是通过索引、下标取值,并且索引是从0开始的
print(names_list[0])
# 输出 张三
print(names_list[1])
# 输出 李四
print(names_list[2])
# 输出 王五
# 2、列表可以修改内部元素
names_list[1] = '小小'
print(names_list)
# 输出 ['张三', '小小', '王五']
# 3、列表可以嵌套
l = [1, 1.1, 'kevin', [666, 777, 888, 'tony', [22,33, 'kevinNB']]]
print(l[3][4][2])
# 输出 kevinNB
#嵌套的原理如下:
l = [1, 1.1, 'kevin', [666, 777, 888, 'tony', [22,33, 'kevinNB']]]
# 1. kevinNB在大列表的第几个位置
l1 = l[3] # [666, 777, 888, 'tony', [22, 33, 'kevinNB']]
# 2.kevinNB在小列表的第几个位置
l2 = l1[4] # [22, 33, 'kevinNB']
# 3.kevinNB在小小列表的第几个位置
l3 = l2[2] # kevinNB
print(l3)
五、字典dict
5.1作用
能够明确的描述详细信息
如果我们需要用一个变量记录多个值,但多个值是不同属性的,比如人的姓名、年龄、身高,用列表可以存,但列表是用索引对应值的,而索引不能明确地表示值的含义,这就用到字典类型,字典类型是用key:value(关键字:值)形式来存储数据,其中key可以对value有描述性的功能
5.2定义
大括号括起来,内部可以存放多个元素,元素与元素之间使用逗号隔开,是以K:V键值对的形式存储
K:是对V的描述性信息(一般情况是字符串str类型)
V:真正的数据,其实相当于变量值,也是任意的数据类型
d = {'username': 'kevin', 'age': 18, 'hobby': 'music'}
5.3使用
d = {'username': 'kevin', 'age': 18, 'hobby': 'music'}
# 1、字典不能通过索引取值,通过字典的K取值
print(d['username'])
# 输出 kevin
print(d['age'])
# 输出 18
print(d['hobby'])
# 输出 music
# 2、字典可以修改内部元素
d['username'] = 'tony'
print(d)
# 输出 {'username': 'tony', 'age': 18, 'hobby': 'music'}
# 3、字典可以嵌套
info = {
'username':'tony',
'addr':{
'国家':'中国',
'info':[666, 999, {'编号':466722, 'hobby':['read', 'study', 'music']}]
}
}
print(info['addr']['info'][2]['hobby'][2])
# 输出 music
六、布尔值bool
6.1作用
用来记录真假这两种状态 判断事物的正确与否
6.2定义
True 真 正确的 可行的...
False 假 错误的 不可行的...
在python中,所有的数据类型都可以转为布尔值
6.3布尔值的变量命名规范
一般推荐使用is开头
eg:is_right、is_delete
6.4在python中,什么是真,什么是假?
是假的情况:0, None, '', [], {}...
其他都是真
七、元组tuple
7.1作用
作用跟列表一样,它是不可变的列表
7.2定义
小括号括起来,内部可以存放多个元素,元素与元素之间使用逗号隔开,元素不能更改。'''元素可以是数值、字符串、列表、字典'''
t = (11, 22, 33, 44)
八、集合set
8.1定义
大括号括起来,内部可以存放多个元素,元素与元素之间逗号隔开,但是不是K:V键值对的形式
元素可以是数值,字符串,不能是列表,字典
s = {11,22,33,44}
8.2特点
无序 去重 集合运算
set1 = {11, 22, 33, 44, 11, 33, 44}
print(set1)
# 输出 {33, 11, 44, 22}
8.3重点
集合中的元素不能直接取出