今日内容总结
常见的数据类型补充
布尔值bool
用途:用于表达事物对错 以及是否可行 用于流程控制
1.存在状态
true 对的 可行的 false 错的 不可行的
2.python中所有数据都自带布尔值
表达false的符号有:0 None '' [] {} (除此之外其他符号均表示true)
3.存储布尔值的数据推荐使用is开头
元组tuple
1.称为“不可变”的列表
元组内索引绑定的内存地址不可被修改
2.使用小括号括起来,数据和数据间用逗号隔开,可以存放不同类型的数据
3.代码实现
t1 = (1, 2, 'xiaochen')
4. 元组与列表对比
列表可改变索引绑定的内存地址
元组不可改变索引绑定的内存地址
5.若元组内只有一个数据也需要加上逗号,不然不会视为是元组
集合set
1.集合只用于去重和关系运算
2.集合内的数据类型应是不可变类型
3.大括号括起来,内部可存放数据值,数据值用逗号隔开,不是k:v键值对
4.代码实现
t={1, 2, 3, 4}
5.定义空集合和空字典
{}为空字典
set()为空集合
用户交互
1.获取用户输入
username = input('请输入您的用户名>>>:')
"""
1.先执行input获取用户输入
2.将输入的数据绑定给变量名username
3.以后在程序中就可以使用变量名反复调用用户数据
"""
input获取到的数据都会统一处理成字符串类型
2.输入内部信息
print
1.括号内既可以放数据值也可以放变量名 并且支持多个 逗号隔开即可
2.print自带换行符
换行符:\r\n \n(斜杠与字母组合到一起可能会产生特殊的含义)
3.print也可以切换结束符
print(数据,end='默认是\n')
格式输出
提前准备定义好一些内容 之后使用进行局部修改即可使用
代码使用
在现实生活中大部分情况下使用下划线提示别人填写内容
但是在程序中需要使用占位符:%s %d
'''在使用多个占位符时需要注意每一个数据值都应对应一个占位符'''
'''不同占位符的区别'''
# %d只支持数字类型
# %s常见数据类型都支持
基本运算符
1.数学运算符
+ - * / % // **
简化写法
n = 10
n += 1 # n = n + 1
n -= 1 # n = n - 1
n *= 1 # n = n * 1
n /= 1 # n = n / 1
n %= 1 # n = n % 1
n //= 1 # n = n // 1
n **= 1 # n = n ** 1
2.比较运算符
< > <= >= ==(等于号) !=(不等于)
常用赋值符
1.链式赋值
name = name1 = name2 = 'xiaochen'
2.交叉复制
方式一:中间赋值法
a=1 b=3 c=b
# b=a
# a=c
方式二:交叉赋值语法
m, n = n, m
3.解压赋值
name_list = ['jason', 'kevin', 'tony', 'oscar']
# name1, name2, name3, name4 = name_list
"""注意事项"""
1.解压赋值在使用的时候 正常情况下需要保证左边的变量名与右边的数据值个数一致
2.当需要解压的数据个数特别多 并且我们只需要使用其中的几个 那么可以打破上述的规则
3.数据值不准备使用的时候 可以使用下划线作为变量名绑定
逻辑运算符
运算符 | 使用 |
---|---|
and | 连接的多个条件必须全部成立 结果才成立 |
or | 连接的多个条件只要有一个成立 结果就成立 |
not | 取反 类似于说反话 |
三者混合使用的时候有优先级之分 但是我们不需要记忆优先级 应该通过代码的形式提前规定好优先级
eg: 先乘除有加减 但是可以使用括号来改变优先级
成员运算符
用于判断个体是否在群体中
# 注意
列表的最小的单位是数据
字串符的最小单位是单个字符
身份运算符
"""
id() 返回一串数字 该数字可以看成是内存地址
"""
is 判断内存地址是否相同
== 判断数据值是否相同
# l1 = [11, 22, 33, 44, 55, 66, 77, 88]
# l2 = [11, 22, 33, 44, 55, 66, 77, 88]
# print(l1 == l2) # True
# print(id(l1))
# print(id(l2))
# print(l1 is l2) # False
# 小整数池
i1 = 11
i2 = 11
print(i1 is i2) #true