Python 入门 Day4
「 流程控制 」:(if elif else , while , for)🔻
昨日内容回顾 python的注释:注释是代码之母 1.python中的注释 1.# 单行注释 2. """ 三个双引号的多行注释 """ ''' 三个单引号的多行注释 ''' 2.与用户交互 获取用户输入 python2 1.input:用户在输入的时候必须手动指定数据类型 2.raw_input:用户输入的内容统一都存为字符串类型 python3 input:用户输入的内容统一都存为字符串类型(******) 3.格式化输出 占位符:%s和%d %s:可以替换任意数据类型 %d:只能给数字占位 %04d:替换的数字要是4位,不足4位用0补全,超过四位正常显示 4.数据类型 不同的数据需要用不同的类型去存取 整型(int) 作用:用来记录整数相关的数据 qq,身份照号不带X,电话号码 age = 18 # age = int(18) 浮点型(float) 作用:薪资 身高 体重 salary = 1.11 # salary = float(1.11) 字符串(str) 作用:描述性的信息 1.'' 2."" 3."""""" 之所以有三种情况的原因在于文本内部可能需要用到引号 列表(list) 作用:存储多个值(元素),元素与元素之间逗号隔开,列表内的元素可以是任意的数据类型 hobby = ['read','run'] # hobby = list([1,2,3,4]) 列表的索引取值:在it业索引通常都是从0开始的 hobby[0][1][2] 字典(dict) 作用:能够明确的表示存储的数据 字典的特点 key:value键值对 key:描述性的信息,用来描述后面的value value:对应的值 可以是任意的数据类型 字典可以表示一个人,一个省,一个国家,一个地球 d = {'name':'jason','password':123} # 注意:字典是无序的 也就意味着它不能依赖于索引取值 字典的取值 d['name'] 布尔值(bool) True False 补充:如果变量名存储的值是布尔值的话,那么约定俗成的变量名统一用is_开头 is_success is_exist is_delete is_locked 运算符 算数运算符 a += 1 # a = a + 1 = 赋值运算符 == 等号 这个等号仅仅只判断值是否相等 is 判断id是否相等 id相等值一定相等 id不相等值也有可能相等 逻辑运算符 and or not 链式赋值 x = y = z = 100 交叉赋值 m = 10 n = 100 m,n = n,m 解压赋值 容器类型:能存储多个值得都可以叫做容器类型 a, b, c = [1, 2, 3] 注意事项 1.变量名于元素的个数要相等 解压赋值的时候对应那些用不到的或者不想要的数据,统一用_来接收 当你需要用一个不知道列表内部元素个数的 首尾的元素 a, *_, b = [1, 2, 3, 4, .......... 10] 打印_返回的是一个列表
「 If」🔻
判断事物的对错,真假,是否可行想让计算机像人一样去工作,那么计算机也应该有对事物的对错,真假,是否可行的判断能力从而做出不同的响应
格式:if 条件 :
固定语法 1.python用缩进表示代码的归属 同一缩进的代码,称之为代码块 补充:布尔值位False数据由哪些:0,None,'',[],{} 布尔值可以直接用来判断 变量名也可以用来判断,因为变量名指向的值对应的就是True或False
例子 x = int(input("请输入您的总分:")) if x >= 90: print('优') elif x>=80: print('良') elif x >= 70: print('中') elif x >= 60: print('合格') else: print('不合格')
需要注意的是:在使用多个elif语句的分支结构时,应把握好多个条件语句之间的关系。只要有一个条件成立,就会将其后的语句执行,执行后退出整个if语句。
if elif else 同一级别配合使用的时候,只会指向一个代码块(走了if就不会走elif else,走了elif就不会走else,if看到没走,走了else说明if elif都没走,都不满足if elif的条件)
if可以嵌套
if语句的嵌套 if<条件>: if<条件>: <语句1> elif<条件>: <语句2>: else: <语句3>
while循环🔻
while语句结构: while语句的基本形式如下: while<条件>: <语句1> else: #和if的效果一样 <语句2> 与for循环不同的是,while语句只有在测试条件为假时才会停止。
# 实现ATM的输入密码重新输入的功能 user_db = 'nick' pwd_db = '123' while True: inp_user = input('username: ') inp_pwd = input('password: ') if inp_user == user_db and pwd_db == inp_pwd: print('login successful') else: print('username or password error') count = 0 while count < 5: print(count, " is less than 5") count = count + 1 else: print(count, " is not less than 5")
「 for 」🔻
for循环 不依赖于索引取值 for循环语法结构 for 变量名 in 容器类型: 代码1, 代码2, 代码3, 代码4,for
语句,迭代语句,Python中的for
语句,可以迭代任何序列,如list或字符串,并且是按顺序的。例如:
流程控制语句可以相互嵌套使用,例如:
len() # 获取数据类型(容器类型)的个数,字符串是特例 获取的是字符串中字符的个数
range()range在python2与python3中的区别(*****)
python2中
1.range其实就是一个列表
2.xrange其实就是你python3中的range
python3中range是一个老母猪,你需要值的时候我才给你
如果想遍历一个数字序列,使用range()
这个Python内置函数很方便,例如生成一个等差序列:
range()
的参数,不会包含在结果内,这个参数代表着生成序列的长度。range()
函数还可以指定一个起点和终点
「 break 、continue 」🔻
break
,简单理解就是跳出循环。例如
#未使用break for i in range(5): print(i,end = ' ') #结果输出 0 1 2 3 4 #使用break for i in range(5): if i == 3: break print(i,end = ' ') #结果输出 0 1 2
对比两个例子中的结果输出,不难理解break的作用,循环到3的时候,for语句就结束了。
continue
,跳出当前循环。例如:
通过上面的例子,看得出3这个数字没有被打印出来,这就是continue
起到的作用了,当i
为3的时候,跳出了当前的循环,直接进入到下一个循环值。
这几个例子,也说明了break
和continue
的区别
有需要补充的我会补充