Python-基本数据类型
一、数字类型
1.整型int
作用:记录年龄、身份证号、个数等等整数数据。
定义:
age = 18
print(type(age)) # int
2.浮点型float
作用:记录视力、身高、体重等有小数的数据。
定义:
height = 1.75
print(type(height)) # float
二、字符串类型
作用:记录描述性质的状态,如名字、一段话。
定义:用引号(’’,"",’’’ ‘’’,""" “”",)包含的一串字符
info = '''当时明月在,曾照彩云归。'''
print(type(info)) # str
name = "JL"
print(type(name)) # str
x=18
print(type(x)) # int
x='18' # 由数字组成的字符串,是字符串类型,不是int类型
print(type(x)) # str
'name'='JL'
# 语法错误,等号左边是变量名,变量名的命名不能有引号
hello # xxx 报错 代表访问变量名字,没有指向的值
'hello' # 'xxx' 不报错 代表的是值,没有被指向的变量名
其他使用:
# 字符串的嵌套,注意:外层用单引号,内层应该用双引号,反之亦然
print("my name is 'JL'")
print('my name is \'JL\'')
# 反斜杠转义,将后面的单引号当做普通字符看待,让其不具有语法意义
# 字符串之间可以相加,但仅限于str与str之间进行,
# 代表字符串的拼接,了解即可,不推荐使用,因为str之间的相加效率极低
print('my name is '+'JL')
print('='*20)
print('hello world')
print('='*20)
三、列表类型
作用:按位置记录多个值(同一个人的多个爱好、同一个班级的所有同学姓名等),并且可以按照索引取指定位置的值。
索引对应值,索引从0开始,0代表第一个。
索引反映的是顺序、位置,对值没有描述性的功能。
定义:在[ ]内用逗号分隔开多个任意类型的值,一个值称之为一个元素
l = [10, 3.1, 'aaa', ['bbb', 'ccc'], 'ddd']
print(l) # [10, 3.1, 'aaa', ['bbb', 'ccc'], 'ddd']
print(type(l)) # list
print(l[1]) # 3.1
print(l[2]) # aaa
print(l[3][1]) # ccc 嵌套列表取值
print(l[4]) # ddd
print(l[-1]) # ddd 取列表最后一个元素
其他的用途:
students_info=[
['tony',18,['jack']],
['jason',18,['play','sleep']]
]
# 取出第一个学生的第一个爱好
print(students_info[0][2]) # ['jack']
print(students_info[0][2][0]) # jack
四、字典类型
作用:用来存多个值,每个值都有唯一一个key与其对应,key对值有描述性功能。
key对应值,其中key通常为字符串类型,所以key对值可以有描述性的功能。
定义:在{ }内用逗号分开各多个 key : value
d={'a': 1,'b': 2}
print(type(d)) # dict
print(d['a']) # 1
info={
"name":'JL',
"age":19,
"gender":'male',
"HP":100
}
print(info["salary"]) # 100
其他用途:
# 字典嵌套取值
students_info={
"massage":{"name":'张三','age':19,'gender':'male'},
"hobbies":{"first":"eat","second":"paly"}
}
print(students_info['massage']["name"]) # 张三
print(students_info['hobbies']["first"]) # eat
# 字典列表嵌套取值
students_info1=[
{"name":'张三','age':19,'gender':'male'},
{"name":'李四','age':20,'gender':'male'},
{"name":'王五','age':21,'gender':'male'},
]
print(students_info1[1]['gender']) # male
students_info2=[
{"massage":['tony',18,['play',"eat"]],'gender':'male'},
]
print(students_info2[0]['massage'][2][1]) # eat
print(students_info2[0]['gender']) # male
PS:列表有序,字典无序
五、布尔类型
作用:用来记录真假这两种状态
is_ok = True
is_ok = False
print(type(is_ok)) # bool
x = 3 < 2
y = 3 == 2
z = 3 > 2
print(x,y,z)
# False False True
print(type(x),type(y),type(z))
# bool bool bool
通常用来当作判断的条件,我们通常在在if判断中用到它。
PS:
# 不一定非要用male/female表示性别,只要是表达两种状态即可。不要为了编程而编程,而忘记了“表现状态”这种编程思想。
students=[
{'name':'张三','gender':'male'},
{'name':'李四','gender':'female'},
]
students=[
{'name':'张三','gender':True},
{'name':'李四','gender':False},
]
students=[
{'name':'张三','gender':1},
{'name':'李四','gender':0},
]
总结:如何选择合适的类型来记录状态
1、选取的类型是否可以明确标识事物的状态。
2、存不是目的,存的目的是为了日后取出来用,并且方便的用。
3、把自己想象成一台计算机,如果我是计算机,我会如何以何种形式把事物的状态记到脑子里,然后再去python中找相应的数据类型,来让计算机像自己一样去记下事物的状态。