python学习Day06
作者:互联网
昨天坐飞机了所以笔记视频晚上才开始看的 看完到3点多太困了就没写博客
今天补一下昨天的博客 不过今天的博客估计得明天才能补了
Day 06
今日内容概要
-
基本数据类型
-
与用户交互
-
格式化输出
-
基本运算符
-
流程控制的简介(最重要的)
今日内容详细
1.基本数据类型
1)列表
主要应用:能够存储多个数据,且可以获取整体、或单个数据
eg:name = ['张三','李四','王五']
qita = [11,12.2,'李四']
表达关键字:list
基本使用语法:用中括号括起来[],里面可以存放多个且不同数据类型的数据(也可以再存放一个列表),但是需用逗号隔开
# 索引取值:在IT领域中数字的起始位置是从0开始
eg: name = ['张三','李四','王五']
print(name[0]) # 取出第0位的数据:张三
print(name[1]) # 取出第1位的数据:李四
print(name[3]) # 取出第0位的数据:王五
'遇到复杂结构的数据,先明确整体邮几个数据值,再一步步拆分'
eg:L1 = [11,22,[33,44,55,[66,77,88],99]]#实际只有4个数据分别是:11 / 22 / 33,44,55,[66,77,88] / 99
如何索引取出88的数据?
1.思路:一、先给88所在的小列表赋一个名称
L2 = L1[2]# 输入print(L2)出来的数据就是33,44,55,[66,77,88]
二、再给88所在的小小列表赋一个名称
L3 = L2[3]# 同理输入print(L3)出来的数据就是66,77,88
三、用索引取值把小小列表中的88取出
print(L3[2])# 出来的数据就是88
2.熟练后的简化方法:
print(L1[2][3][2])# 出来的数据就是88
2)字典
主要应用:能够存储多个数据,且可以获取整体、或单个数据,且数据会有对应解释
eg: info = {'姓名':'张三','年龄':18,'爱好':'跑步'}
表达关键字:dict
基本使用语法:用花括号括起来{},内部可以存放多个数据,数据的组织形式是K:V键值对
K是V的描述信息,一般都是字符串型
V是真实的数据值,可以是任意数据类型
# 字典取值:字典无法使用索引取值,因为字典是没顺序的,只可以使用按K取值
eg: info = {'姓名':'张三','年龄':18,'爱好':'跑步'}
print(info['姓名'])# 出来的数据就是张三
print(info['年龄'])# 出来的数据就是18
print(info['工资'])# 当K不存在时结果会报错
练习:取出'age'的18值?
data = {'name': 'jason', 'others': [111, 222, {'a1': '嘿嘿', 'a2': '哈哈', 'a3': [123, {'name': 'jason1', 'age': 18}]}]}
方法一:
L1 = data['others']#输出L1结果为:[111, 222, {'a1': '嘿嘿', 'a2': '哈哈', 'a3': [123, {'name': 'jason1', 'age': 18}]}]
L2 = L1[2]#输出L2结果为:{'a1': '嘿嘿', 'a2': '哈哈', 'a3': [123, {'name': 'jason1', 'age': 18}]}
L3 = L2['a3']#输出L3结果为:[123, {'name': 'jason1', 'age': 18}]
L4 = L3[1]#输出L4结果为:{'name': 'jason1', 'age': 18}
print(L4['age'])#输出结果为18
方法二(简化):
print(data['others'][2]['a3'][1]['age'])
3)布尔值(程序中使用最多的)
表达关键字:bool
主要应用:用来表示事物是否可行、正确、合理
总共就两个值: True / False
#True、False 首字母必须大写
eg:
is_right = True 真 可以 正确
是否 正确
is_delete = False 假 不可以 错误
是否 删除
'基本使用语法:存储布尔值的名字一般使用is开头
布尔值类型转换:
程序中所有的数据类型都可以转成布尔值
布尔值为 False的数据有:0、None、空字符串、空列表、空字典...
除上述之外所有的数据对于布尔值都是 True
4)元组
表达关键字:tuple
主要应用:能够存储多个数据,且可以获取整体、或单个数据
与列表的区别在于元组内数据值不能"直接修改",而列表可以。所以元组有一个外号是不可变的列表。
一般用于存储只能看不能改的数据
eg:
t1 = (11,22,33)
基本使用语法:用小括号括起来(),里面可以存放多个且不同数据类型的数据,但是需用逗号隔开
与列表对比:
列表:可以将某个索引值重新定义为另外的值
元组:如果将某个索引值重新定义为另外的值就会报错
eg:
l1 = [11,22,33] #列表
t1 = [11,22,33] #元组
print(l1[0]) #输出结果为11
print(t1[0]) #输出结果为11
但是如果要修改数据
l1[0] = '张三' #输出l1结果为张三,22,33
t1[0] = '李四' #输出t1结果就会报错
5)集合
表达关键字:set
主要应用:集合只用于去重和关系运算
去重:自动去除重复的数据
关系运算:判断两个集合之间数据的关系(共同好友、共同点赞)
eg: s1 = {1,2,3,4,5}
基本使用语法:和字典一样,都是用花括号{},只是里面不是用K:V键值对的形式,而是用数据值的形式
# 定义空字典与空集合:
D1 = {} #空字典
S1 = set() #空集合
2.与用户交互
1)输入
向计算机输入信息
input('请输入姓名') #获取用户输入
eg: name = input('请输入你的名字')
思路:
1.先获取用户输入的数据
2.再赋值给左边的名字name
3.之后就可以通过名字name反复使用用户输入的数据
eg: name = input('输入名字')# 让用户输入数据并赋值给name
print(name)# 显示用户输入的信息
print(type(name))# 显示用户输入的信息和是什么类型的数据
'input获取到的用户输入都会转成字符串类型'
2)输出
计算机向外界输出信息
print()#打印数据值
eg: print(123)#括号内可以直接放数据值
————————————————————————————————
name = '张三'
print(name)#括号内也可以放变量名
————————————————————————————————
print(123,232,253)#括号内也可一次性打印多个值
————————————————————————————————
换行符:\n 、 \n\r
print('aaa\nbbb')结果是两行分别是aaa和bbb
print('aaa\n\rbbb')结果是两行分别是aaa和bbb
或连着上下打两个print()也是自动换行输出
结束符:end=''
eg:print(111,end='')
print(222)
输出结果就是111222
print(111,end='张')
print(222)
输出结果就是111张222
————————————————————————————————
不同版本解释器print使用会不同,比如:
python3.X #print()
python2.X #print
3.格式化输出 (使用场景较多)
在python中如果想要占位(xxx),需要占位符
1)%s #支持所有数据类型替换
info = "亲爱的%s你好,你%s月的话费是%s,余额是%s"
print(info %('张三',5,100,10))#结果为:亲爱的张三你好,你5月的话费是100,余额是10
2)%d #只支持给数字替换
info = "你%d月的话费是%d,余额是%d"
print(info %(5,100,10))#结果为:你5月的话费是100,余额是10
其他用法:
print('%08d' % 123)#结果为:00000123
#产生固定位数的数据(总共8位,123之前的位数用0填充),常见在快递单号中
4.基本运算符
1)算数运算符
加 +
减 -
乘 *
除 /
整除(只要除完后的整数位) //
取模(只要出完后的小数位) %
幂指数(次方) **
#变种情况:
IT准则:能少敲一个字母就绝不多敲
eg: x = 10
x = x + 100 #等于 x += 100 x自增10
x = x - 100 #等于 x -= 100
x = x * 100 #等于 x *= 100
x = x / 100 #等于 x /= 100
2)比较运算符
== 等于 (一个等号是赋值符号)
!= 不等于
5.多种赋值符号
1)链式赋值:
eg:如果要让a b c 赋值给10
则 a = 10
b = 10
c = 10
print(a,b,c)#输出结果就是10 10 10
用链式赋值:
x = y = z = 10 (让x、y、z都绑定10的值)
2)交叉赋值:
提问: m = 10
n = 99
让m绑定n的值,n绑定m的值
方法一:创建一个中间变量
a = m #创建一个a 让它去绑定m的值
m = n #m去绑定n的值
n = a #n去绑定a的值
priint(m,n)
方法二:(交叉赋值)
m,n = n,m
print(m,n)
3)解压赋值:
eg: name = ['张三','李四','王五']
用三个不同的名称存储三个不同的人名?
a,b,c = name
#赋值符号左边至少要有两个及以上的名字才能成为解压赋值
特殊情况(当数值较多时):
sz = [1,2,3,4,5,6,7,8,9,10]
a, b, *c, d = sz #在解压赋值时会自动将多余的数据值组成列表赋值给*后的变量名
print(a)#结果为1
print(b)#结果为2
print(c)#结果为[3,4,5,6,7,8,9]
print(d)#结果为10
作业:
1.获取用户信息并打印出下列格式
------------ info of XXX -----------
Name : XXX
Age : XXX
gender : XXX
Job : XXX
------------- end -----------------
2.自行研究输入输出在python2和python3中的区别
标签:10,name,python,eg,Day06,学习,print,100,数据 来源: https://www.cnblogs.com/Oreoxx/p/16398862.html