python循环

python的代码块的处理:
  1,python是通过缩进来区分代码块的
  2,缩进通常是一个tab键(4个空格)

一、if的使用

条件语句:
  if
  if--else
  if--elif--else

注意点:
  一个条件语句中,必须一个if,else(0个或1个),elif(1个或多个)

# 考试成绩的等级评定:
#     0-60:E
#    60-70: D
#    70-80: C
#    80-90: B
#    90-100:A
score = int(input("请输入考试成绩:"))
if 0 < score < 60:
    print("您的成绩为:E")
elif 60 <= score < 70:
    print("您的成绩为:D")
elif 70 <= score < 80:
    print("您的成绩为:C")
elif 80 <= score < 90:
    print("您的成绩为:B")
elif 90 <= score < 100:
    print("您的成绩为:A")
else:
    print("您输入的成绩有误!!!")
print("程序执行结束!")

二、while循环

while 条件:
  循环体

break :强制跳出循环
continue:终止当前本轮循环,开启下一轮循环(执行到continue,直接回到条件判断的地方)

pass: 没有任何语义

while True --> 始终成立

# 需求1:打印100遍hello python
n = 1
while n <= 100:
    print("这是第{}遍hello python".format(n))
    n = n+1
print("循环结束!")

# 需求2,登录案例,如果账号或者密码错误,那就重新输入
user = "zhangsan"
pwd = "666"
while True:
    username = input("请输入用户名:")
    password = input("请输入密码:")
    if user == username and pwd == password:
        print("恭喜登录成功!!!")
        # break 跳出循环
        break
    else:
        print("账号或密码错误!")
print("----------------------------------")

# 需求3:通过循环去打印1-10,其中5不用打印
m = 0
while m < 10:
    m = m + 1
    if m == 5:
        continue
    print(m)

 

三、for循环

for 变量 in 被遍历的数据:
    循环执行的代码

可以被遍历的数据类型:字符串、列表、元组、字典、集合

内置函数len():获取数据的长度

for循环 (遍历循环)

li = [11, 22, 33, 44, 55, 66]
print("列表的长度:", len(li))    # 6

# 遍历列表
li1 = [1, 2, 3, 4, 5, 6]
for i in li1:
    print(i)               # 1 2 3 4 5 6

# 遍历字符串
s = "hello python"
for m in s:
    print(m)              # h e l l o  p y t h o n

# 遍历元组
tu = (11, 22, 33, 44)
for n in tu:
    print(n)              # 11 22 33 44

# 遍历集合
set1 = {'aa', 'bb', 'cc', 'dd', 'ee'}
for i in set1:
    print(i)              # aa bb cc dd ee

# 遍历字典(重点!!!)
dic = {"name": "jack", "age": "18", "sex": "boy"}
# 假如还是像上面那样直接遍历字典
for d in dic:
    print(d)       # name age sex   只会遍历出字典中的key

# 那么该如何进行遍历,遍历出键值对呢?items方法
for e in dic.items():
    print(e)    # ('name', 'jack')('age', '18')('sex', 'boy')

# 遍历字典的key
for a in dic.keys():
    print(a)   # name age sex

# 遍历字典的value
for b in dic.values():
    print(b)   # jack 18 boy

 

内置函数range

range(n)   :     0 --- n
range(n,m):      n --- m-1
range(n,m,k):   n --- m-1 ,k为步长 

# range的使用
# 可以这样生成一个列表
res = list(range(20))
print(res)    # 打印结果为 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]

# range(n)
for i in range(10):   # 打印 0-9  一共10条数据
    print("这个是第{}遍i:hello python".format(i))

# range(n,m)
for i in range(1, 10):   # 打印 1-9  一共9条数据
    print("这个是第{}遍i:hello python".format(i))

# range(n,m,k)
for i in range(1, 10, 2):   # 打印 1,3,5,7,9    一共5条数据  步长为2(也就是相差为2)
    print("这个是第{}遍i:hello python".format(i))

for i in range(1, 10, 3):   # 打印 1,4,7    一共3条数据  步长为3(也就是相差为3)
    print("这个是第{}遍i:hello python".format(i))

 

for循环案例:注册

需求:实现一个注册的小程序代码,
  1.用户输入账号id 密码pwd 再次确认密码pwd2
  2.判断该账号是否已注册,已注册就打印账号被注册
  3.判断两次密码是否一致,不一致,则打印两次密码不一致
  4.上面两个判断都通过则注册成功(注册成功之后,需要将账号和密码保存到列表中)

users = [
    {"uid": "xm01", "pwd": "001"},
    {"uid": "xm02", "pwd": "002"},
    {"uid": "xm03", "pwd": "003"},
]
id = input("请输入账号:")                   # 第一步
pwd = input("请输入密码:")
pwd2 = input("请再次确认密码:")
for m in users:
    if id == m['uid']:                        # 第二步
        print("该账号已被注册!!!")
        break
else:
    # 如果账号没有注册,
    print("该账号可以进行注册,继续判断密码")
    if pwd == pwd2:                             # 第三步
        print("注册成功")
        users.append({"uid": id, "pwd": pwd})    # 第四步
    else:
        print("两次输入的密码不一致!!!")

嵌套循环

python循环_第1张图片    python循环_第2张图片

 循环嵌套的经典案例,就是这两个:打印三角形和九九乘法口诀表

# 循环嵌套,在测试工作中,不是很常用,只需了解即可,理清楚逻辑思维就行

# 需求,打印三角形小星星
for i in range(1, 7):
    for j in range(i):
        print("* ", end="")
    print()
print("-------------------------------------------------")
# 需求:打印九九乘法口诀表 # for循环实现 for m in range(1, 10): for n in range(1, m+1): print("{} * {} = {}\t ".format(n, m, m*n), end="") print() print("-------------------------------------------------") # while实现: m = 1 while m <= 9: n = 1 while n <= m: s = m * n print("%d * %d = %d" % (n, m, s), end="\t") n += 1 print("") m += 1 print("-------------------------------------------------")

 

你可能感兴趣的:(python循环)