第四章 python入门数据类型

python入门数据类型

一、整型(int)

作用:记录年龄、身份证号、个数等

例:age = 18, count = 300

二、浮点型(float)

作用:记录人的身高,体重,薪资等小数相关的状态

例:weight = 75.5, height = 1.83

三、字符串(str)

作用:用来描述实=事物的状态

例:address = ‘东直门‘, name = ‘wcg‘

定义字符串的几种方式:

一对单引号:
    name = ‘wcg‘, address=‘东直门‘
一对双引号:
    name = "wcg", address = "东直门"
多引号:
   msg = """
    描述的信息
    """
   msg = ‘‘‘
   	描述的信息
   ‘‘‘

ps:字符串可以执行算数中的加法和乘法

其中,字符串相加是拼接字符串,字符串相乘是将某一个字符串重复执行N次

>>> name = ‘tony‘
>>> age = ‘18‘
>>> name + age # 相加其实就是简单的字符串拼接
‘tony18‘
>>> name * 5 # 相乘就相当于将字符串相加了5次
‘tonytonytonytonytony‘

四、布尔类型(bool)

作用:用来判断事物的真假,返回值只能是True/False

应用场景: 通常用来当作判断的条件,我们将在if判断中用到它

例:is_girl = False, has_car = True

ps: python中布尔值大小写敏感,严格区分大小写

五、列表(list)

作用:按位置记录多个值,并且可以按照索引取指定位置的值,列表的定义用[]

在python中列表的概念和其他编程语言中的数组类似,比如在php中定义数组 $arr = array(1,2)

# python中定义列表:
# 在[]内用逗号分隔开多个任意类型的值,一个值称之为一个元素
例:
    new_list = [‘wcg‘, 18, ‘male‘]
ps: 列表中的元素可以是任意类型的值,取值操作必须按照下标获取,下标获取数值从0开始,如果不存在该索引就报错,索引反映的是顺序、位置,对值没有描述性的功能
    >>> new_list = [‘wcg‘, 18, ‘male‘]
    >>> new_list[0]
    ‘wcg‘
    >>> new_list[1]
    18
    >>> new_list[3]
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    IndexError: list index out of range
    >>>

补充: 列表中可以嵌套列表,取值方式同列表取值方式一样

# students_info = [
#     [‘tony‘, 18,[‘read‘, ‘run‘]],
#     [‘allen‘, 18,[‘play‘, ‘sleep‘]]
# ]
# 取出第一个学生的第一个爱好
# print(students_info[0][2][0])

六、字典(dict)

作用:如果我们需要用一个变量记录多个值,但多个值是不同属性的,比如人的姓名、年龄、身高,用列表可以存,但列表是用索引对应值的,而索引不能明确地表示值的含义,这就用到字典类型,字典类型是用key:value形式来存储数据,其中key可以对value有描述性的功能,字典的定义用{}

# 定义:在{}内用逗号分开各多个key:value
# d={‘a‘:1,‘b‘:2}
# print(type(d))
# print(d[‘a‘])

# 1、字典类型是用key来对应值,key可以对值有描述性的功能,通常为字符串类型,取值方式是以key作为下标
    >>> person_info={‘name‘:‘tony‘,‘age‘:18,‘height‘:185.3}
    >>> person_info[‘name‘]
    ‘tony‘
    >>> person_info[‘age‘]
    18
    >>> person_info[‘height‘]
    185.3
    
# 2、字典可以嵌套
	>>> students=[
    ... {‘name‘:‘tony‘,‘age‘:38,‘hobbies‘:[‘play‘,‘sleep‘]},
    ... {‘name‘:‘jack‘,‘age‘:18,‘hobbies‘:[‘read‘,‘sleep‘]},
    ... {‘name‘:‘rose‘,‘age‘:58,‘hobbies‘:[‘music‘,‘read‘,‘sleep‘]},
    ... ]
    >>> students[1][‘hobbies‘][1] #取第二个学生的第二个爱好
    ‘sleep‘

列表与字典的混合使用:

students_info = [
    {"name":‘wcg‘,‘age‘:19,‘gender‘:‘male‘},
    {"name":‘allen‘,‘age‘:20,‘gender‘:‘male‘},
    {"name":‘lucy‘,‘age‘:18,‘gender‘:‘female‘},
]
# 取值依然遵循列表与字典的取值方式,比如我想取allen的年龄:
>>> students_info[1][‘age‘]  # 20

七、元祖(tuple)

作用:元组与列表类似,也是可以存多个任意类型的元素,不同之处在于元组的元素不能修改,即元组相当于不可变的列表,用于记录多个固定不允许修改的值,单纯用于取元祖的定义用()

new_t = (1,2,3)

ps:通常我们将固定不需要改变的数据放在元祖中,如果元祖中只有一个值,该值后面必须要添加一个逗号

定义一个只有123这一个数字类型值的元祖:

t = (123,)

八、集合(set)

作用:集合主要用于对数据的去重、关系运算

"""
定义:在{}内用逗号分隔开多个元素,集合具备以下三个特点:
     1:每个元素必须是不可变类型
     2:集合内没有重复的元素
     3:集合内元素无序
"""
s = {1,2,3,4}  # 本质 s = set({1,2,3,4})

重点:注意集合和字典定义时的区别:

d = {} # 默认是空字典 
s = set() # 这才是定义空集合