terte 发表于 2018-4-9 13:21:47

python_基本数据类型


[*]什么是数据?
数据即变量的值,如age=18,18则是我们保存的数据。
[*]为何要有多种类型的数据?
变量的是用来反映/保持状态以及状态变化的,毫无疑问针对不同的状态就应该用不同类型的数据去标识;
3 数字   
int整型
定义:age=10         #age=int(10)
用于标识:年龄,等级,×××号,qq号,个数
float浮点型
定义:salary=3.1      #salary=float(3.1)
用于标识:工资,身高,体重,
查看数量类型:
   
#type(age)可以查看数据类型
4.字符串
在python中,加了引号的字符就是字符串类型,python并没有字符类型。
定义:name='egon' #name=str('egon')
用于标识:描述性的内容,如姓名,性别,国籍,种族
#那单引号、双引号、多引号有什么区别呢? 让我大声告诉你,单双引号木有任何区别,只有下面这种情况 你         需要考虑单双的配合
msg = "My name is qyy , I'm 18 years old!"
#多引号什么作用呢?作用就是多行字符串必须用多引号
msg = '''
窗前明月光,
凝视地上霜,
举头望明月,
低头思故乡。
'''
print(msg)
#数字可以进行加减乘除等运算,字符串呢?让我大声告诉你,也能?what ?是的,但只能进行"相加"和"相乘"运算。


    >> name='qyy'
    >> age='18'
    >> name+age #相加其实就是简单拼接
    'egon18'
    >> name*3
    'qyyqyyqyy'

#注意1:字符串相加的效率不高
字符串1+字符串3,并不会在字符串1的基础上加字符串2,而是申请一个全新的内存空间存入字符串1和字符串3,相当字符串1与字符串3的空间被复制了一次,

#注意2:只能字符串加字符串,不能字符串加其他类型

字符串拼接(只能在字符串之间进行,且只能相加或相乘)

5.列表
#在[]内用逗号分隔,可以存放n个任意类型的值
定义:students=['a','b','c',] #students=list(['a','b','b',])
用于标识:存储多个值的情况,比如一个人有多个爱好
#存放多个学生的信息:姓名,年龄,爱好

    >> students_info=[['a',18,['play',]],['b',18,['c','sleep']]]
    >> students_info #取出第一个学生的第一个爱好
    'play'

6.字典
为何还要用字典?
存放一个人的信息:姓名,性别,年龄,很明显是多个值,既然是存多个值,我们完全可以基于刚刚学习的列表去存放,如下

    >> info=['qyy','male',18]
    定义列表的目的不单单是为了存,还要考虑取值,如果我想取出这个人的年龄,可以用
    >> info
    18
    但这是基于我们已经知道在第3个位置存放的是年龄的前提下,我们才知道索引2对应的是年龄
    即:
    #name, sex, age
    info=['qyy','male',18]
    而这完全只是一种假设,并没有真正意义上规定第三个位置存放的是年龄,于是我们需要寻求一种,即可以存放多个任意类型的值,又可以硬性规定值的映射关系的类型,比如key=value,这就用到了字典

#在{}内用逗号分隔,可以存放多个key:value的值,value可以是任意类型
定义:info={'name':'egon','age':18,'sex':18} #info=dict({'name':'egon','age':18,'sex':18})
用于标识:存储多个值的情况,每个值都有唯一一个对应的key,可以更为方便高效地取值
students=[
{'name':'gcl','age':248,'hobbies':['play','sleep']}, # 0 第一个学生
{'name':'qyy','age':28,'hobbies':['read','sleep']}, # 1 第二个学生
{'name':'cyh','age':15,'hobbies':['music','read','sleep']}, # 2 第3 个学生
]
print(students['hobbies']) #取第二个学生的第二个爱好

7.布尔
#布尔值,一个True一个False
#计算机俗称电脑,即我们编写程序让计算机运行时,应该是让计算机无限接近人脑,或者说人脑能干什么,计算机就应该能干什么,人脑的主要作用是数据运行与逻辑运算,此处的布尔类型就模拟人的逻辑运行,即判断一个条件成立时,用True标识,不成立则用False标识

    >> a=3
    >> b=5
    >>
    >> a > b #不成立就是False,即假
    False
    >>
    >> a < b #成立就是True, 即真
    True

#所有数据类型都自带布尔值
1、None,0,空(空字符串,空列表,空字典等)三种情况下布尔值为False
2、其余均为真

    可变类型 不可变类型:
    #1.可变类型:在id不变的情况下,value可以变,则称为可变类型,如列表,字典

    #2. 不可变类型:value一旦改变,id也改变,则称为不可变类型(id变,意味着创建了新的内存空间)



页: [1]
查看完整版本: python_基本数据类型