初始While循环和for循环

While循环

  While循环,是一个循环加判断的组合,满足判断条件返回 (True)开始循环代码块,不满足判断条件返回 (False)不循环

格式:

  While 条件:

     代码块

  注意:在While循环里如果不加终止循环的判断或者关键字,会一直循环(死循环)

 

 

While循环  关键字(break)   跳出整个循环 不在循环

  如: 循环出1到5

复制代码
#!/usr/bin/env python
# -*- coding:utf-8 -*-
import time #引用计时器模块
s = 1
while True:
print(s)
if s == 5:
break
s+=1 #变量s自身累积加1
time.sleep(1) #调用计时器
复制代码

  上列,当循环到5时,if判断s变量等于5的时候,执行if里面的代码块遇到 break (跳出整个循环 不在循环) 就直接跳出并且不在循环了

 

While循环  关键字(continue)   跳出本次循环  继续下次环

  如:循环出1、2、3、4、  6、7、8、9、10、 跳出5 

复制代码
#!/usr/bin/env python
# -*- coding:utf-8 -*-
import time #引用计时器模块
s = 1
while True:
if s == 5:
s+=1
continue
print(s)
if s==10:
break
s+=1 #变量s自身累积加1
time.sleep(1) #调用计时器
复制代码

如上列,当循环到5的时候if判断到后,执行if里面的代码块,if里 s变量加1就是6,continue跳出本次循环,再次循环时s变量是6了,if判断等于5就不成立了跳过判断,往下执行,直到第二个if判断到等于10后遇到break跳出整个循环不在循环

 

While循环  求1-100所有数相加的和(1+2+3+4+5...+100)

  如: 

复制代码
# !/usr/bin/env python
# -*- coding:utf-8 -*-
s = 1
t = 0
while s<101:
t = t + s
s += 1 #变量s自身累积加1
print(t)
复制代码

  如上列,t = t + s 就是每次循环到这里的时候,将s变量自身累积加1的值在加上t变量的值重新赋值给t变量(这里可以理解为,s变量每次循环自身累积加1的值,在加上t变量的值,重新赋值给t变量做一个登记)最后在打印这个t变量,t变量最后的登记,就是整个循环相加的和

 

While循环 加 if判断  输出1-100内的所有奇数 

复制代码
#!/usr/bin/env python
# -*- coding:utf-8 -*-
s = 1
while s < 100:
t = s % 2 #让s变量的值求余后重新赋值给t变量
#s求余等于0为偶数,等于1为奇数
if t == 1:
print(s)
else:
pass
s += 1 #变量s自身累积加1
复制代码

  也就是先循环出1-100,然后在循环里定义一个变量t,将每次循环到的s变量值求余后赋值给t变量,然后判断t变量的值,如是1就是奇数打印出s变量,如果不是1就是偶数就不打印pass,这样就循环加判断的方式,打印出了1-100内的所以奇数。

 

While循环 加 if判断  输出1-100内的所有偶数 

复制代码
#!/usr/bin/env python
# -*- coding:utf-8 -*-
s = 1
while s <101:
t = s % 2 #让s变量的值求余后重新赋值给t变量
#s求余等于0为偶数,等于1为奇数
if t == 0:
print(s)
else:
pass
s += 1 #变量s自身累积加1
复制代码

  也就是先循环出1-100,然后在循环里定义一个变量t,将每次循环到的s变量值求余后赋值给t变量,然后判断t变量的值,如是0就是偶数打印出s变量,如果不是0就是奇数就不打印pass,这样就循环加判断的方式,打印出了1-100内的所以奇数。

 

While循环 加 if判断  求1-2+3-4+5...99的所有数的和

  如:

复制代码
#!/usr/bin/env python
# -*- coding:utf-8 -*-
n = 0
s = 1
while s <= 99:
if s%2==1:
n = n + s
else:
n =n - s
s += 1
print(n)
复制代码

  也就是在循环里做判断,循环到的是奇数就相加,如果是偶数就相减,每一次循环的相加或者相减,赋值给 r变量记录一下,n变量最后的记录就是我们得到的加减后的和

 

While循环 加 if判断  用户输入用户名和密码有3次机会

  如: 

复制代码
#!/usr/bin/env python
# -*- coding:utf-8 -*-
a = 0
while a < 3:
name = input("请输入用户名")
pwd = input("请输入密码")
if name == "xiaoxiao" and pwd== "123":
print("恭喜你登录成功")
break
else:
print("很遗憾密码或用户名错误")
a += 1
复制代码

  也就是用While循环 加 if判断,在循环里判断用户输入的用户名和密码是否正确,正确就登录成功退出整个循环,不正确提示错误,变量a加1,再次循环重复操作,当变量a的值大于3时,循环条件不在成立,停止循环

  

for循环

  主要用于循环一个字符串列表等

  不需要判断,定义一个循环变量即可

  格式:for (循环定义变量) in (被循环的变量)    循环完后自动退出整个循环

  打印循环定义变量即可

  关键字(continue)   跳出本次循环  继续下次环

  关键字(break)   跳出整个循环 不在循环

复制代码
#!/usr/bin/env python
# -*- coding:utf-8 -*-
# #for循环
#b为循环自定义变量
a = "abcdefghijklmnopqrstuvwxyz"
for b in a:
print(b)
#循环出所有字母
复制代码

  关键字应用

复制代码
#!/usr/bin/env python
# -*- coding:utf-8 -*-
# #for循环
#b为循环自定义变量
a = "abcdefghijklmnopqrstuvwxyz"
for b in a:
if b == "f":
continue #跳出本次循环 继续下次环
else:
print(b)
#循环出所有字母(f除外)
复制代码

 

如何只获取for里的第某一次值【重点】 

复制代码
#!/usr/bin/env python
# -*- coding:utf-8 -*-
"""如何只获取for里的第某一次值"""
a = [11, 22, 33, 44, 55, 66, 77, 88, 99]
for k, v in enumerate(a): #首先要用enumerate()函数给被循环对象,添加一个键也就是下标,这样就可以在循环里定义两个变量来分别接受键和值,
#print(k,v)#这样就能拿到键和值,用if判断键来获取某一次需要的值
#如:要获取第5次循环的值
print(k,v) #打印所有值和下标
if k == 5: #如果键等于5就打印这次循环的值
print(v)
# 输出
# 66
posted @ 2017-05-03 17:11  真-小亮亮  阅读(465)  评论(0编辑  收藏  举报
#20191216