作业讲解
v1 = 1 or 3
v2 = 1 and 3
v3 = 0 and 2 and 1
v4 = 0 and 2 or 1
v5 = 0 and 2 or 1 or 4
v6 = 0 or False and 1
n1=0 or 1
n2=v1 or 0
n3=0 and 1
n4= 1 and 0
n5=0 or 3
n6=3 or 0
n7=1 or 3
n8=3 or 1
n9=3 or 4
n10=4 or 3
count = 0
while count < 3:
username = input("username>>>:")
password = input("password>>>:")
if username =='nana' and password =='123':
print("登录成功")
break
else:
print("登录失败")
count += 1
while True:
username = input("username>>>:")
password = input("password>>>:")
if username =='nana' and password =='123':
print("登录成功 欢迎光临")
while True:
cmd = input("请输入你的指令:")
if cmd =='q':
print("欢迎下次光临")
break
print("正在执行您的指令:%s" %cmd )
break
else:
print("用户名或密码错误 再试一次")
real_age = 23
count = 0
while True:
if count == 3 :
choice = input("是否继续猜年龄>>>(y/n):")
if choice == 'y':
count = 0
else:
print("欢迎下次继续")
break
guess_age = input("请输入你猜测的年龄>>>:")
guess_age = int(guess_age)
if real_age == guess_age:
print("猜对了")
break
elif real_age >= guess_age:
print("猜小了")
count += 1
else:
print("猜大了")
count += 1
循环结构之for循环
1.前戏
l1 = ['jason', 'kevin', 'tony', 'oscar']
i = 0
while i<=3:
print(l1[i])
i += 1
for i in l1:
print(i)
"""for循环能够做的事情while 也可以做
for循环的语法结构更加简单 尤其是更加擅长循环取值"""
2.语法结构
for 变量名 in 可迭代对象:
for循环的循环体代码
"""
变量名的命名:
如果带取值的数据有明确的指向,最好见名知意
如果没有明确的指向 可以使用常见的字母 eg:i j item等等
"""
3.常见的取值操作
1. 列表
l1 = ['jason', 'kevin', 'tony', 'oscar']
i = 0
while i < 4:
print(l1[i])
i += 1
for i in l1:
print(i)
2. 字典
user_dict = {
'username': 'jason',
'pwd': 123,
'age': 18
}
for i in user_dict:
print(i)
"""for循环只能取到字典里面的key"""
3.字符串
st = "nihao xiaoxiao 加油!!!"
for i in st:
print(i)
"""for循环字符串 默认每次去单个字符"""
4.元组
tp= (11,22,33,44,55)
for i in tp:
print(i)
"""for循环元组数据与列表一致 默认都是单个数据值"""
5.集合
s1 ={1,2,3,4,5}
for i in s1:
print(i)
"""for循环集合 默认返回单个数据"""
for循环重要知识
1.range 方法(三种用法)
range可以看成是一个能够帮助我们快速产生一个包含多个数据值的列表
1.for i in range(n):
print(i)
2.for i in range(m,n):
print(i)
3.for i in range(m,n,k):
print(i)
2.range在python2与python3差异
在python2中有两个
range():直接产生一个列表 当数据很大的时候可能会造成内存爆满
xrange():就是python3里面的range方法
在python3中
range():类似于是一个工厂 什么时候要什么时候创建 节省内存
range方法实操
网络爬虫:python代码模拟网络请求获取数据
很多网页的数据都不止一页 所以有时候需要通过代码模拟
eg:博客多页规律
"""
https://www.cnblogs.com/#p2 第二页
https://www.cnblogs.com/#p3 第三页
https://www.cnblogs.com/#p4 第四页
"""
base_url="https://www.cnblogs.com/#p%s"
for i in range(1,101):
print(base_url % i)
for +break
for i in range(1,10):
if i == 7:
break
print(i)
for +continue
for i in range(1,10):
if i == 7:
continue
print(i)
for +else
for i in range(10):
print(i)
else:
print("行")
for i in range(10):
if i == 5:
continue
print(i)
else:
print("行")
for i in range(10):
if i == 5:
break
print(i)
else:
print("行")
"""else配合for一起使用 当for循环没有被强制结束的情况下(就是没有break) 循环体结束之后运行else子代码"""
作业
i =1
sum =0
while i <= 100:
sum += i
i += 1
print(sum)
sum = 0
for i in range(1,101):
sum += i
print(sum)
l1 = [11,2,3,2,2,1,2,1,2,3,2,3,2,3,4,3,2,3,2,2,2,2,3,2]
count = 0
for i in l1:
if i == 2:
count += 1
continue
print(count)
base_url = "https://movie.douban.com/top250?start=%s&filter="
for i in range(0,250,25):
print(base_url % i)
for i in range(4):
print("*****")