Python语法之数据类型

Python语法

1.数据类型

# 什么是数据类型
    在现实生活中存储数据的方式和表现形式有很多
       文本文件   表格文件  视频文件  音频文件  图片文件...
    在IT界里数据的存储方式和表现形式也是千变万化的

1.1数据类型之整形int

# 大白话理解:整数
作用:记录人的年龄 班级人数 ...
定义:
       age = 18 # 直接写整数就行

1.2数据类型之浮点型float

# 大白话理解:小数
作用:记录人的体重  薪资  身高
定义:
      salary = 3.1 # 直接写小数就是浮点型

小总结

整形与浮点型可以统称为数字类型
    主要用于数学运算和比较运算

1.3数据类型之字符串str

# 作用
用来记录人的名字,家庭住址,性别等描述性质的状态

# 定义
  方式2 # 单引号
    name = 'jank'
  方式2 # 双引号
    name = "jank"
  方式3 # 三个单引号(左侧出现了赋值符号和变量名为字符串 否则为注释)
    name = '''jank'''
  方式4 # 三个双引号(左侧出现了赋值符号和变量名为字符串 否则为注释)
    name = """jank"""
PS:引号引起来的部分
    
 # 为啥定义字符串需要这么多中方式
    res = 'jank老师说:'年轻不是挥霍的资本 更不要高估自己''
    目的是为了防止字符串文本内还需要使用到引号 为了避免不冲突
    res = 'jank老师说:"年轻不是挥霍的资本 更不要高估自己"'
   
用单引号、双引号、多引号,都可以定义字符串,本质上没有区别的,但是要注意用法
  #1.需要考虑引号嵌套的配对问题
    res = "My name is Tom , I'm 18 years old!" # 内层有单引号,外层就用爽引号
  #2.多引号可以写多行字符串
     res = '''
         老和尚对小和尚说:“徒儿,烧点水吧。”
         于是小和尚找几块石头拼了一个炉灶,用捡来的水壶装满了水,可是找了很久,也没有找到足够的柴火。
         小和尚很沮丧地说:“师傅,柴火不够!你等一下,我去找施主们借一点吧!”
         老和尚看着他说:“为什么不把壶里的水倒掉一些呢?”
     '''

数字可以进行加减乘除运算,字符串,也可以,但只能进行“相加”和“相乘”运算

在这里插入图片描述

1.4数据类型之列表list

作用:能够存储多个数据并且可以方便的取出任意个数
特征:中括号括起来,内部可以存放多个元素,元素与元素之间逗号隔开,元素可以是任意一种数据类型
eg:
    name_list = ['jason', 'tony', 'tom']
    n1 = [11, 1.1 'jason',[11, 22, 33]]

在这里插入图片描述

打印出JasonNB
# 1.jasonNB在列表的第几个元素
m1 = [11, 1.1, 'jason', [11, 22, 33, [123, 321, 'jasonNB', 555]]]
# 2.jasonNB在列表m1的第几个元素
m2 = (m1[3])  # [11, 22, 33, [123, 321, 'jasonNB', 555]]
# 3.jasonNB在列表m2的第几个元素
m3 = (m2[3])  # [123, 321, 'jasonNB', 555]
# 4.jasonNB在列表m3的第几个元素
m4 = (m3[2])  # jasonNB
print(m4)  # 第一种方法
print(m1[3][3][2])  # 第二种方法
print(type(m1))  # 数据类型

在这里插入图片描述

1.5数据类型之字典dict

如果我们需要一个变量记录多个值,但多个值是不同属性的,比如人的姓名、年龄、身高、用列表可以存,但列表是用所以对应值的,而索引不能明确地表示值的含义,这就用到字典类型,字典类型就是key:value类型的存储数据,其中key可以对value有描述性的功能
# 作用:能够精准的存储数据
定义:大括号括起来,内存可以存放多个元素,元素与元素之间逗号隔开,元素是key:value键值对的形式
    key是对value的描述性性质的信息(一般情况下都是字符串)
    value是正在的数据,相当于变量的值,可以是任意数据类型
    
# 两种写法
d = {'username': 'tom', 'age': '18', 'hobby': '学习'}

d = {
    'username': 'tom', 
    'age': '18', 
    'hobby': '学习'
}

在这里插入图片描述
在这里插入图片描述

练习题

#小题目取出中国最伟大
info = {
    'username': 'tom',
    'addr': ['江苏', '苏州', {'国家': '中国', '编号': [11, 22, '中国最伟大']}]
}
# 1.中国最伟大在什么位置
d1 = info['addr']  # ['江苏', '苏州', {'国家': '中国', '编号': [11, 22, '中国最伟大']}]
# 2.中国最伟大在什么位置
d2 = d1[2]  # {'国家': '中国', '编号': [11, 22, '中国最伟大']}
# 3.中国最伟大在什么位置
d3 = d2['编号']  # [11, 22, '中国最伟大']
# 4.中国最伟大在什么位置
d4 = d3[2]  # 中国最伟大
print(d4)
print(info['addr'][2]['编号'][2])

在这里插入图片描述

1.6数据类型之布尔值bool

作用:用于判断事物的对错,是否可行等
定义:布尔值只有两种状态
     True: 对的 正确的 可行的
     False: 错的  不可行的
        
# 补充
针对布尔值的变量名一般采用is开头
     is_right = True
     is_delete = False
     is_alive = True
    
# 扩展
     现实生活中的数据存储与销户,其实很大概率上并没有删除数据,而是修改了数据的某个唯一的标识,然后通过代码筛选过滤掉
# 记忆
     正在python中所有的数据类型都可以转成布尔值
     布尔值为False的有:
         0,None,'',[],{}...
     其他情况一律为True
    

1.7数据类型之元祖tuple

作用:与列表几户一致,内部可以存放多个元素(可以看成是不可变的列表)
定义:用小括号括起来,内存存放多个元素,元素与元素之间逗号隔开,元素的类型有限制,元素不支持修改
     t = (11, 22, 33, 44)

在这里插入图片描述

1.8数据类型之集合set

作用:去重和关系运算
定义:用大括号括起来,内存可以存放多个元素,元素与元素之间逗号隔开,元素不是key:value键值对
    s = {11, 22, 33, 44}

在这里插入图片描述

2.与用户交互

# 输入
     # 获取用户输入
     username = input('请输入你的用户名>>>>:')
     '''将input获取到的用户输入绑定给变量名username'''
     print(username, type(username))
     # input获取到的用户输入全部都会转成字符串
# 输出
     print()
    # 默认print功能有一个end参数,该参数的默认值为"\n"(代表换行),可以将end参数的值改成任意其它字符
    1.括号可以使用逗号隔开多个元素一起打印
    2.自带end参数,可以控制打印的排版
          print(123,end='\n')
		 print(456,end='&')
		 print('qqq',end='@')
        # 整体输出结果为:123456&qqq@

3.格式化输出

# 将字符串中某些内容替换掉之后再输出,就是格式化输出
res = '亲爱的%s你好!你%s月的话费是%s,余额是%s' # %('tony',12,103,11)
print(res % ('tony', 11, 100, 110))
print(res % ('tom', 11, 200, -110))
print(res % ('kevin', 11, 500, -999))
"""
1.先使用占位符占位  %s
    %s可以给任意数据占位
2.再使用%按照位置一一替换
"""

在这里插入图片描述

# %d占位符(只能给数字做占位符)(了解即可)
res1 = '亲爱的%d你好!你%s月的话费是%s,余额是%d'
print(res1 % ('jason', 11, 99, 9999))

在这里插入图片描述

# %08d的意思是生成几位数,08就是8位数,在加后面123,位数不够用0填充
print('%08d' % 123)
print('%08d' % 12)
print('%08d' % 1)
print('%07d' % 1)
print('%08d' % 1111111111)
# 如果后面值超了,则为你写的结果,如果不够位数,则用0填充
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值