Python学习--day 06
- 视频来源:python视频 900集
033.三目与运算符的优先级
- 三目运算符(几乎没用过,容易忘记)
其他语言的三目运算符格式:表达式 ? 真 : 假
result = (8>10) ? '真' : '假'
python的三目运算符格式:
A if () else B
结果为真的操作 if 表达式 else 结果为假的操作
a = 6
b = 5
result = (a + b) if a>b else (b - a)
print(result)
- 运算符的优先级(没必要记,大概知道就好)
**
、
+、-(符号运算符)
*、/、//、%
+、-
<<、>>
&
^
|
==、!=、>、>=、<、<=
is、is not
not
and
or
034.if语句
- 语句的种类:条件判断语句、for循环语句、跳转语句
- 条件语句 if
if内的语句必须使用Tab进行缩进 - python规定,判断变量
if(变量)
若变量是0、’ '、None,则默认为False,其余只要有值就是为True。
035.if+else的使用
- if内是成立的时候需要执行的,else是不成立的时候需要执行的。
- 四个空格与Tab键不同,在sublime中划出是不一样的,四个空格划后是四个点,Tab键是个横线;推荐统一使用Tab键进行缩进,不然有可能报错。
- if-else可以嵌套。
- 随机数的引入:
import random
:使用import将random模块引入,才能使用随机数。
random.randint(1,10)
:在1~10中随机生成一个随机数
036.if语句之猜大小和多重条件猜宋姐年龄
- 前排提示,文件的命名不要使用Python中一些默认的模块名字,会导致import模块时的覆盖,导致出错。
- 多重条件判断,用elif,与Java中的else if不同。
- 猜宋姐年龄是一个练习,有点过于简单了,就是多重的if-else嵌套。
037.循环for
- for循环的使用:
for 变量名 in 集合
跟Java和C、C++差别还是很大的。 - 使用系统内置函数range()实现集合:
基本模式:range(start, stop[, step])
range(8)
就是range(0,8),包含0,不包含8,只有0、1、2、3、4、5、6、7
range(0)
就是不包含0, - 使用for循环:
for i in range(3):
print('hello')
# 将i分别逐次赋值0、1、2
038.for循环吃馒头案例
- 改变range()或使用i + 1输出从1开始的循环信息。
- 如何控制循环中某一特定的步骤:使用if-else
for i in range(1,6):
if i == 3
print ('{}是3'.format(i))
else: #使用else和if将条件控制住
print('{}不是3'.format(i))
039.for和else+pass+break
- for-else 【python独有的,for可以与else一起使用】
for-else中的else:适用于for循环执行完或者没有循环数据的时候,else中的内容就会被执行。
num = int(input('请输入需要的馒头数量:'))
name = '张三'
for i in range(num):
print('{}很饿,正在吃第{}个馒头'。format(name, i+1))
else:
print('还没有给我馒头,{}饿哭啦......'.format(name))
# 当FOR循环中的内容执行完毕的时候,就会执行else的内容
- pass关键字
pass表示空语句,而且不会报错。
当有缩进且缩进的内容还不确定的时候,或者一个分支自己暂时不确定写什么的时候,可以使用pass。
if 10 > 7:
print('10是大的')
else:
# **什么都不写会报错的**
# 使用pass空语句占位
pass
# 当你有新内容可以添加的时候,将pass注释掉,加入自己的内容
比如写代码的一些小技巧:
for i in range(3):
pass
#可以占位,用于等想好了再添加
- break关键字
用于跳出循环,强制退出for循环的结构,执行循环下面的代码。
问题难点:使用Break是否可以跳出for-else的循环?
使用如下代码可测试,第一次输入错误用户名和密码+第二次输入正确用户名和密码,可以发现没有执行for-else中的内容——因此可以得出结论,for-else是一个整体,break可以跳出包括else的for-else循环。
for i in range(3):
username = input('请输入用户名:')
password = input('请输入密码:')
if username == 'songsong' and password == '123456'
print('欢迎!用户:{}'.format(username))
print('--------轻松购物吧---------')
break
else:
print('用户名或者密码有误!')
else:
print('账户被锁定,需要重新激活')
040.用户登录+吃馒头案例
类似习题课,巩固总结。
041.上午总结
- for 往往结合 range
range()
可以是单参数(range(6)
)、双参数(range(3,5)
)、三参数(range(1,50,5)
)。- 常用pass填充代码,随手写pass,结构是完整的。
- for可以结合else使用。
- break跳出循环。
042.while循环
- while循环
第一件需要注意的事情,for循环中的index不需要额外重新预定义,而while需要,类似的其他语言中的for循环。
第二件注意事情,python不支持++、–操作,注意不能使用这种东西,要使用+=1之类的方式
for循环:for i in range(4,6)
while循环:index = 0 while index < 5: pass
- 构成死循环的几种情况:
1、打印变量,变量还没有改变。
2、while True: pass - 课上其他时间,师生热烈讨论了打印30以内、3的倍数的数字问题,实在没啥意思。
043.while求累加和
- 总体来说就是一段代码:
i = 0
sum_1 = 0
while i <= 20:
sum_1 += 1
i += 1
print(sum_1)