python的学习

数据类型及常用方法

1.1数据类型的概念

如何理解数据类型
eg:
日常生活中
表示姓名用文本 表示年龄用整数 表示体重用小数
视频文件 文本文件 表格文件 pdf文件 程序文件
代码程序中
也需要有不同的数据类型来表示不同的数据状态
储备知识
如何查看数据的数据类型
type()
ps:数据类型的学习就相当于在学习英语的字母、单词

1.2数据类型概览

数据类型:

1.整数(int)
2.浮点型(float)
3.字符串(str)
4.列表(list) []
5.字典(dict){}
6.布尔值 (bool)(True,False)
7.元组(tuple)()
8.集合(point){}

1.数据类型之整型 (int)

其实就是整数!!!
主要应用场景:年龄 学生人数 年份
基本使用:
	age = 18
	stu_num = 38
	year = 2022
表达关键字:int
核心语法:直接写整数即可

2.数据类型之浮点型 (float)
其实就是小数!!!
主要应用场景:体重 身高 薪资待遇
基本使用:
weight = 76.8
height = 1.83
salary = 3.1
表达关键字:float
核心语法:直接写小数即可

3.数据类型之字符串/字符型

其实就是文本信息!!!
主要应用场景:描述性性质的信息  姓名 住址 爱好
基本使用:
    name = 'jason'
    addr = "上海"
    hobby = '''读书\写字'''
    info = """你们好呀 准备好起飞了吗"""
表达关键字:str
核心语法:引号引起来的部分
疑问1:为什么定义字符串需要有这么多种方式???
	"jason老师说:"只要下定决心好好学 你肯定不会失望""  # 报错
 	原因:我们在定义字符串的内部可能也需要使用引号 如果冲突了会报错
       所以定义字符串给出了多种方式 避免冲突
  	核心:明确定义字符串的符合和内部文本的符号(不冲突即可)
疑问:三引号前面学习的是注释 为什么又变成了字符串
	 当三引号左边没有赋值符号和变量名的时候 意思是注释
	 当三引号左边有赋值符号和变量名的时候 意思是字符串
    多引号可以写多行字符串
    """
    好好学习
    天天向上
           """
    数字可以进行加减乘除等运算,字符串呢?也可以,但只能进行"相加"和"相乘"运算。
    >>> name = 'jason'
    >>> age = '18'
    >>> name + age #相加其实就是简单的字符串拼接
    'jason18'
    >>> name * 5 #相乘就相当于将字符串相加了5次
    'jasonjasonjasonjasonjason'

4 .数据类型之列表(list)

1.本质
能够存储多个数据 并且能够方便的获取整体或者局部
2.基本使用
l1 = [1, 2, 3, 4, 5]
3.语言描述
中括号括起来 内存可以存放多个数据值 数据值与数据值之间逗号隔开
数据值可以是任意数据类型
l2 = [11, 11.11, ‘jason’, [11, 22, 33]]
4.索引取值
# name_list = [‘陈志燕’, ‘沈月’, ‘李五’]
‘’‘索引取值:在IT领域数字的起始位置通常是从0开始 现实生活中是从1开始’‘’
# print(name_list)
# print(name_list[1]) # 沈月
# print(name_list[0]) # 陈志燕
# print(name_list[100]) # 索引超出范围直接报错
l1 = [11, 22, [111, 222, 333, [123, 321, 666], 444]]
‘’‘遇到复杂构造的数据 先明确整体有几个数据值 然后再一步步拆分’‘’
# 1.先获取666所在的小列表
# print(l1[2]) # [111, 222, 333, [123, 321, 666], 444]
# l2 = l1[2] # 将索引取值获取到的数据绑定给l2
# print(l2) # 之后就可以通过l2获取列表
# 2.再获取666所在的小小列表
# print(l2[3]) # [123, 321, 666]
# l3 = l2[3] # 将索引取值获取到的数据绑定给l3
# 3.变成了最简单的索引取值情况
# print(l3[2])
‘’‘熟练之后 上述可以简写成一步完成’‘’
print(l1[2][3][2])

5. 数据类型之字典(dict)

1.本质
能够存储多个数据 并且能够方便的获取整体或者局部 并且数据具有对于解释
2.基本使用
info_dict = {‘姓名’: ‘jason’, ‘年龄’: 18, ‘爱好’: ‘read’}
3.语言描述
大括号括起来 内部可以存放多个数据 数据的组织形式是K:V键值对
K是对V的描述性性质的信息 一般是字符串
V是真实的数据值 可以是任意数据类型
4.按K取值

info_dict = {'姓名': 'jason', '年龄': 18, '爱好': 'read'}
    '''字典取值:字典无法使用索引取值(因为字典是无序的) 可以使用按K取值'''
    print(info_dict['姓名'])  # jason
    print(info_dict['年龄'])  # 18
    print(info_dict['家产'])  # K不存在直接报错

5.取值练习题

取值年纪
data = {'name': 'jason','others': [111, 222, {'a1': '嘿嘿','a2': '哈哈','a3': [
          123,{'name': 'jason1','age': 18}]}]}
# 1.先获取大列表
l1 = data['others']
# print(l1)  # [111, 222, {'a1': '嘿嘿', 'a2': '哈哈', 'a3': [123, {'name': 'jason1', 'age': 18}]}]
# 2.获取大列表中的字典
d1 = l1[2]
# print(d1)  # {'a1': '嘿嘿', 'a2': '哈哈', 'a3': [123, {'name': 'jason1', 'age': 18}]}
# 3.获取字典的值
l2 = d1['a3']
# print(l2)  # [123, {'name': 'jason1', 'age': 18}]
# 4.获取列表的数据
l3 = l2[1]
# print(l3)  # {'name': 'jason1', 'age': 18}
# 5.按k取值
# print(l3['age'])
"""上述可以简写成一步"""
print(data['others'][2]['a3'][1]['age'])
    

6.基本数据类型之布尔值(bool)

1.本质
用来表示事物是否可行 是否正确 是否合理
总共就两个值
2.基本使用
is_right = True # 真 可以 正确
is_delete = False # 假 不可以 错误
3.详细介绍
布尔值看似很简单 很少见 其实在程序中是最多的 也是使用频率最高的
存储布尔值的名字一般使用is开头 # 君子协定
4.布尔值类型转换
程序中所有的数据类型都可以转成布尔值
布尔值为False的数据有
0 None 空字符串 空列表 空字典 …
除上述之外所有的数据对于的布尔值都是True
5.所有的编程语言都有布尔值 只不过关键字和值可能有变化(了解)
typeof true
‘boolean’ # js中就不一样

7基本数据类型之元组(tuple)

1.本质
能够存储多个数据 并且能够方便的获取整体或者局部
与列表的区别在于元组内数据值不能"直接修改" 而列表可以
所以元组有一个小外号>>>:不可变的列表
2.作用
一般用于存储一些只能看不能改的数据
3.基本使用
t1 = (111, 222, 333)
4.语言描述
小括号括起来 内存可以存放多个数据值 数据值与数据值之间逗号隔开
数据值可以是任意数据类型
5.与列表对比

l1 = [11, 22, 33]
t1 = (11, 22, 33)
# print(l1[0])
# print(t1[0])
# l1[0] = 'jason'  # 将列表索引0重新绑定数据值jason
# print(l1)  # ['jason', 22, 33]
t1[0] = 'tony'  # 将元组索引0重新绑定数据值tony  直接报错!!!
print(t1)

8.基本数据类型之集合(set)

1.本质
集合只用于去重和关系运算
去重:自动去除重复的数据
关系运算:判断两个集合之间数据的关系(共同好友 共同点赞)
2.基本使用
s1 = {1, 2, 3, 4, 5}
3.定义空集合

d1 = {}
s1 = {}
print(type(d1))  # dict
print(type(s1))  # dict
ss = set()  # 必须使用关键字才能定义空集合
print(type(ss))

练习

1.获取用户信息并打印出下列格式
	 ------------ info of XXX -----------
    Name  : XXX
    Age   : XXX
    gender : XXX
    Job   : XXX 
    ------------- end -----------------
    #1.确定输出格式
    info = """
        ------------ info of XXX -----------
        Name   : %s
        Age    : %s
        gender : %s
        Job    : %s
        ------------- end -----------------
        """
    #2.获取用户信息
    name = input('请输入您的姓名>>>:').strip()
    age = input('请输入您的年龄>>>:').strip()
    gender = input('请输入您的爱好>>>:').strip()
    job = input('请输入您的工作>>>:').strip()
    #3.格式化输出
    print(info%(name , age , gender , job))

你可能感兴趣的:(python)