python数据类型总结

内容概要

数据类型

  • 字符串
  • 列表
  • 字典
  • 布尔值
  • 元组
  • 集合
  • 与用户交互
  • 基本运算符

1.数据类型之字符串(关键词:str)

作用:记录描述性性质的数据---姓名、地址、邮箱
描述:
方式一 :单引号
name = 'jason'
方式二 :双引号
name = "jason"
方式三 :三个单引号或双引号(左侧出现了赋值符号和变量名为字符串 否则为注释)
name = '''jason'''
name = """jason"""
为什么定义字符串有这么多方式?
为了防止字符串文本内还要再次使用引号!
res = '莎士比亚说:'TO be or not to be,this is a question''---这里字符串只有'莎士比亚说:'
res = '莎士比亚说:“TO be or not to be,this is a question”'---这里字符串是 '莎士比亚说:“TO be or not to be,this is a question”'
关键词:
image

2.数据类型之列表(关键词:list)

作用:能够存储多个数据并且可以方便的取出任意个数
描述:中括号括起来 内部可以存放多个元素 元素与元素之间逗号隔开 元素可以是任意数据类型
比如:在列表 list = [1, 1.5, 'mary', [10, 20, 30]]---打印 20
image
索引取值是从0开始计数 所以
print(list[3])---[10, 20, 30]
print(list[3][1])---20
关键词:
image

3.数据类型之字典(关键词:dict)

作用:更加精准的存储数据
描述:大括号括起来 内部存放多个元素 元素与元素之间逗号隔开 元素要是k:v键值对形式
k是对v的描述性性质信息(一般情况下都是字符串)
v是真正的数据 相当于变量的值 可以是任意数据类型
dict = {
'name' : 'mary',
'age' : 18,
'hobby' : 'music',
'salary' : 15
}
image
字典无法使用索引取值 取值要借助于K
image
info = {
'username': 'jason',
'addr': ['安徽', '芜湖', {'国家': '中国', '编号': [11, 22, '中国最牛逼']}]
}
取值中国最牛逼
image
分布:
1.l1 = info['addr'] # ['安徽', '芜湖', {'国家': '中国', '编号': [11, 22, '中国最牛逼']}]
2.d1 = l1[2] # {'国家': '中国', '编号': [11, 22, '中国最牛逼']}
3.l2 = d1['编号'] # [11, 22, '中国最牛逼']
4.res = l2[2] # '中国最牛逼'
整合:
print(info['addr'][2]['编号'][2]) # 中国最牛逼
关键词:
image

4.数据类型之布尔值(关键词:bool)

作用:用于判断事物的对错 是否可行等
描述:布尔值只有两种状态
True---对的 正确的 可行的
False---错的 不可行的...
针对布尔值的变量名一般用is开头:
is_right = True
is_delete = False
is_alive = True
重要:在python中所有的数据类型都可以转成布尔值
---布尔值为False的有:
0, None, '空白', [], {}...
---其他情况一律为True
关键词:
image

5.数据类型之集合(关键词:set)

作用:去重和关系运算
描述:用大括号括起来 内存可以存放多个元素 元素与元素之间用逗号隔开 元素不是K:V键值对
例:
s = {11, 21, 31, 41, 51}
image
关键词:
image

6.数据类型之元组(关键词:tuple)

作用:与列表几乎一致 内部可以存放多个元素(也可以看作不可变的列表)
描述:用小括号括起来 内存存放多个元素 元素与元素之间逗号隔开 元素不支持修改
例:
t = (15, 25, 35, 45, 55)
image
关键词:
image

  • 集合和元组两个类型分别对应无序和有序

7.与用户交互

  • 输入---获取用户的输入
    name = input('请输入你的用户名>>>:')
    将input获得的用户名作为值绑定给变量名
    输入:print(name, type(name))
    input获取到的用户名输入会全部都转成字符串
    image
  • 输出---print()
    1.括号可以使用逗号隔开多个元素一起打印
    image
    2.自带end参数 可以控制打印的排版
    image
    通过输入:
    print(123,end='\n')---end=+内容 后面的内容可以自行更改 如不更改默认是换行符

8.格式化输出

将字符串中某些内容替换后再输出就是 格式化输出
例:
mail = '亲爱的%s您好,您当月话费%s元,余额是%s元'
print(mail%('亚当', 100, 500))
...
image
1.先使用占位符%s占位
2.再使用%按照位置逐一替换
3.%d只能给数字占位

9.运算符

  • 算数运算符
    // % **...
  • 比较运算符
    == 判断值是否相等
    != 值不等于
  • 赋值运算符
    =
    增量赋值表述:
    n = 666
    n = n + 1 》 n += 1
    n = n - 1 》 n -= 1
    n = n * 1 》 n *= 1
    n = n / 1 》 n /= 1
    链式赋值表述:
    x = 666
    y = x
    z = y
    x = y = z = 666
    交叉赋值表述:
    我们定义两个变量m与n
    m = 10
    n = 99
    m, n = n, m
    print(m, n)>>99 10
    image
    解压赋值表述:
    name_list = ['jason', 'kevin', 'tony', 'jack']
    name1 = name_list[0]
    name2 = name_list[1]
    name3 = name_list[2]
    name4 = name_list[3]
    一行代码表示
    name1, name2, name3, name4 = name_list
    左右两边个数相等 多一个也不行 少一个不行
    进阶用法:可以打破上述规律 特殊符号 *号
    例:name1, *_, name2 = name_list
    print(name1, _, name2)
    得:jason ['kevin', 'tony'] jack
    *可以将所有多余的元素 统一组织成列表赋值给后面的变量名
    下划线单独作为变量名 通常表达的意思指向的值没有啥用\暂时用不到
    image

10.逻辑运算符

在python逻辑运算符就三个
and-->与
用于连接多个条件并且多个条件必须都成立才可以
or-->或
用于连接多个条件并且多个条件只要有一个成立即可
not-->非
取反
and中:有一个错就是错False
image
or中:有一个对就是对True
image
not中:取反(不是正确就是错)
image
三个连接符号如果混合使用 是有优先级的 但是我们在编写的时候应该人为的规定好优先级

posted @ 2021-11-03 19:04  Deity_JGX  阅读(82)  评论(0编辑  收藏  举报