python之for循环和while循环的使用

咱们在写代码时常常会用到循环,python中有for循环和while循环,咱们来详细的了解一下这两种循环。python

for循环

Python for循环能够遍历任何序列的项目,如一个列表或者一个字符串。函数

咱们经过一个例子来看一下for循环的具体使用,咱们经过range() 函数建立一个整数列表,而后将列表中的元素经过for循环打印出来。code

# for i in range(5)开始迭代的时候,生成一个数值0,第二次迭代再生成数值1,第三次迭代再生成数值2,

for i in range(5):
    print(i)

# 输出:
0
1
2
3
4

上面是使用了range()函数,咱们试试本身定义一个列表来经过for循环打印:blog

list1 = ['a', 'b', 'c']
for i in list1:
    print(l)

# 输出:
a
b
c

仔细看上面两个例子,咱们发现,循环每次迭代时,for会从序列中取一个元素赋值给控制变量i(可本身定义),下一轮迭代又取下一个元素赋值给i。字符串

for循环使用 else 语句get

除了使用单独的for语句,还可使用for ... else语句,else中的语句会在循环正常执行完的状况下执行。it

list1 = ['a', 'b', 'c']
for i in list1:
    print(i)
else:
    print("循环正常执行完毕")
# 输出:
a
b
c
循环正常执行完毕

上面咱们说到循环正常执行完毕的状况,那确定是还有循环不正常执行完毕的状况。什么状况就算不正常执行完毕的退出呢?像经过break、continue语句退出循环的就不算正常执行完毕。for循环

  • break语句:退出整个循环,若是嵌套了循环,则退出break所在的那层循环。变量

  • continue语句:跳过当前循环的剩余语句,而后继续进行下一轮循环。循环

  • pass语句:不作任何事情,通常用作占位语句。

for迭代字典

for迭代字典时,能够分为不一样的几种方式:

  • 经过keys()迭代字典的key
dict1 = {'name': 'Tom', 'age': 11, 'sex': 'man'}

for i in dict1.keys():
    print(i)

# 输出:
name
age
sex
  • 经过values()迭代字典的value
for i in dict1.values():
    print(i)

# 输出:
Tom
11
man
  • 经过items()同时迭代key和value
for k, v in dict1.items():
    print(k, v)

# 输出:
name Tom
age 11
sex man

range() 函数的介绍

python range() 函数可建立一个整数列表,通常用在 for 循环中

语法:range(start, stop[, step])
  • start:计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
  • stop:计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
  • step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)

while循环

while循环和for循环都能循环作一件重复的事情。不一样的地方在于for循环是在序列穷尽时中止,而while循环是在条件不成立时中止。 while循环的执行语句能够是单个语句或语句块,判断条件能够是任何表达式,任何非零、或非空(null)的值均为true。当判断条件假false时,循环结束。

  • 真值表

咱们经过一个实例来看一下while循环的使用:

a = 3
while a >= 1:
    print(a)
    a -= 1

# 输出:
3
2
1

循环条件为a>=1,因此当这个条件成立时就会继续循环,打印a。当a<1时就会中止循环。

固然,若是咱们想要中途终止循环也可使用breakcontinue语句。

while循环使用else

while循环和for循环同样,也可使用else语句,咱们一块儿来看一下:

a = 3
while a >= 1:
    print(a)
    a -= 1
else:
    print('循环结束 !')

# 输出:
3
2
1
循环结束 !

无限循环

若是你想要循环永远执行,可让条件让真一直成立,好比说:

a = 1
while a == 1:
    print(a)
else:
    print('循环结束 !')

# 会一直循环打印1

break跳出循环

a = 0
while a < 10:
    print(a)
    a = a + 1
    if a == 3:
        print("break跳出循环")
        break
else:
    print('循环结束 !')

# 输出:
0
1
2
break跳出循环

continue进去下一轮循环

for i in range(1, 11):
    if i % 2:
       continue   
    print(i)

# 输出
2
4
6
8
10

上面代码中使用了continue语句,if 条件语句的意思是若是i%2为真(不等于0)就进入下一轮循环。若是i%2为假(等于0)时会执行print(i)语句,打印i 。

参考:https://www.9xkd.com/

相关文章
相关标签/搜索