11、Python流程控制之for循环

一、for循环的语法与基本使用

1.1 什么是for循环结构?

  循环结构就是重复执行某段代码块,除了while循环值钱了,还有for循环。

1.2 为什么要用for循环结构?

  理论上for循环能做的事情,while循环都可以做。之所以要有for循环,是因为for循环在循环取值(遍历取值)比while循环更简洁。

1.3 如何使用循环结构?

  python中有while与for两种循环机制,其中for循环称之为条件循环,语法如下:

for 变量名 in 可迭代对象: # 此时只需知道可迭代对象可以是字符串\列表\字典,我们之后会专门讲解可迭代对象
    代码一
    代码二
    ...

例1
for item in ['a','b','c']:
    print(item)
# 运行结果
a
b
c

# 参照例1来介绍for循环的运行步骤
# 步骤1:从列表['a','b','c']中读出第一个值赋值给item(item=‘a’),然后执行循环体代码
# 步骤2:从列表['a','b','c']中读出第二个值赋值给item(item=‘b’),然后执行循环体代码
# 步骤3: 重复以上过程直到列表中的值读尽

二、for循环的应用

2.1 while循环之循环取值:

案例1:列表循环取值

简单版
l = ['alex_dsb', 'lxx_dsb', 'egon_nb']
for x in l:  # x='lxx_dsb'
    print(x)

复杂版:
l = ['alex_dsb', 'lxx_dsb', 'egon_nb']
i=0
while i < 3:
    print(l[i])
    i+=1

案例2:字典循环取值

简单版
dic={'k1':111,'k2':2222,'k3':333}
for k in dic:
    print(k,dic[k])

复杂版:while循环可以遍历字典,太麻烦了

案例3:字符串循环取值

msg="you can you up,no can no bb"
for x in msg:
    print(x)

2.2 总结for循环与while循环的异同:

  1、相同之处:都是循环,for循环可以干的事,while循环也可以做到。
2、不同之处:while循环称之为条件循环,循环次数取决于条件何时变为假;for循环称之为"取值循环",循环次数取决in后包含的值的个数。

for x in [1,2,3]:
    print('===>')
    print('8888')

2.3 for循环控制循环次数:range():

  in后直接放一个数据类型来控制循环次数有局限性:当循环次数过多时,数据类型包含值的格式需要伴随着增加。

for x in 'a c':
    inp_name=input('please input your name:   ')
    inp_pwd=input('please input your password:   ')
    # 字符串中有三个数据,循环了三次,若次数过多,则需要更多数据
range函数可创建一个整数列表,一般用在 for 循环中。range()在python2中得到一个列表,在python3,不需要输出完整的列表,节省了空间。

2.4 range补充知识:

  1、for搭配range,可以按照索引取值,但是麻烦,所以不推荐。

l=['aaa','bbb','ccc'] # len(l)
for i in range(len(l)):
    print(i,l[i])

for x in l:
    print(l)
2、range()在python3里得到的是一只"会下蛋的老母鸡"

2.3 for+continue:

  案例:

for i in range(6):  # 0 1 2 3 4 5
    if i == 4:
        continue
    print(i)

2.4 for循环嵌套:

  外层循环循环一次,内层循环需要完整的循环完毕。
  PS:终止for循环只有break一种方案。

for i in range(3):
    print('外层循环-->', i)
    for j in range(5):
        print('内层-->', j)

三、补充:

  1、print的使用,python里面,print()函数默认换行,即默认参数end = '\n'

>>>print('hello %s' % 'egon')
hello egon

  2、print之逗号的使用,相当于空格

>>>print('hello','world','egon')
hello world egon

  3、换行符:"\n"

>>>print('hello\n')
hello
>>>print('world')
world

  4、print值end参数的使用
  设置print()函数的参数end=''(空字符串),从而实现不换行,也可以设置为其他字符进行输出。

>>> print('hello\n',end='')
hello
>>>

>>> print('world')
world
>>>

>>> print('hello',end='*')
hello*>>>

>>> print('world',end='*')
world*>>>

猜你喜欢

转载自www.cnblogs.com/zuiyouyingde/p/12457644.html