python 学习笔记(六)for循环、for嵌套循环案例

for 循环 重复执行语句。在循环次数已知时使用for循环,且所有for循环均可用while循环实现。python中for循环可以遍历任何序列项目,如一个列表、字符串、元祖等
while 循环 在给定的判断条件为 true 时执行循环体,否则退出循环体。在循环次数未知时使用while循环。
嵌套循环 循环体中嵌套循环。

1、for循环的语法格式:

for 临时变量 in 列表或是字符串或是元祖或是集合或是字典或是文件等:
    循环满足条件时执行的代码
else:
    循环不满足条件时执行的代码  
#重复执行语句。在循环次数已知时使用for循环,
# 且所有for循环均可用while循环实现。python中for循环可以遍历任何序列项目,
# 如一个列表、字符串、元祖等
#for循环的使用场景
##想要某个操作重复执行切循环次数已知时、可以使用for循环
##所有for循环均可以用while来实现

#for循环的语法格式
'''for 临时变量 in 列表或是字符串或是元祖或是集合或是字典或是文件等:
    循环满足条件时执行的代码
else:
    循环不满足条件时执行的代码  '''
#1、for循环操作实例
'''for循环可遍历除数字以外的数据基本类型,
如字符串、元组、列表、集合、字典、文件等,
我们还可通过序列索引进行遍历。具体操作如下所示:'''
'''#1、for循环遍历字符串
str ='abc'
for i in str:
    print(i)
#运行结果
a
b
c '''
'''#2、for循环遍历元组
tup =(31,30,28,35,21,35,34,29,31) 
for i in tup :
    print(i,end='') #end’‘ 为不换行
#运行结果
31 30 28 35 21 35 34 29 31  '''
'''#3、for循环遍历列表
List =['apple','banana','grape','orange']
for fruits in List :
    print(fruits)#打印输出水果
#运行结果
apple
banana
grape
orange   '''
'''#4、for循环遍历集合
set ={110,16,'dance','Amy'}
for i in set :
    print(i)
#运行结果
110
16
dance
Amy  '''
'''#5、for循环遍历字典
dict ={'name':'Amy','height':110,'weight':16,'hobby':'dance'}
for k,v in dict.items() :#遍历dict中的键值对
    print(k,'---->',v)#打印输出dict中的K:V的键值对
print('-----------')#打印输入'---------'
for k in dict.keys():#遍历dict中所有的键
    print(k) #打印输出dict中的keys
print('--------------')#打印输入'---------'
for v in dict.values() :#遍历dict中所有的值
    print(v)#打印输出dict中的values
#运行结果
name ----> Amy
height ----> 110
weight ----> 16
hobby ----> dance
-----------
name
height
weight
hobby
--------------
Amy
110
16
dance  '''
'''#6、for循环遍历文件
for content in open('test.txt'):#当前目录下的test.txt文件
    print(content) #打印输入test.txt文件下的内容。
                    #’contest‘:目录、内容
#运用结果
’‘’
’‘’#7、for循环实现1到9相乘
sum=1
for i in list(range(1,10)): #range 序列含左不含右(包含数字1,不包含数字10)
    sum*=i
print('1*2*3...*10=',sum)
#运用结果
1*2*3...*10= 362880   '''
#可以通过序列索引进行遍历函数语法

#函数语法: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

#range的用法:range(5) — 一个参数,从0开始到5不包含5(即含左不含右);
#range(5,15) — 两个参数,从5开始到15不包含15;
#range(5,55,5) — 三个参数,从5开始到55不包含55,最后的参数5是步长
#内置函数 len() 和 range(),
#函数 len() 返回列表的长度,即元素的个数。
#range返回一个整数序列。
# range() 函数可创建一个整数列表,一般用在 for 循环中。
#使用len()和range()内置函数
'''furits=['apple','banana','grape','orange']  #定义列表
for index in range(len(furits)):#
    print('当前水果:',furits[index])#遍历打印输出列表内的水果
print('当前水果总数:',len(furits)) #打印输出元素个数
#运行结果:
当前水果: apple
当前水果: banana
当前水果: grape
当前水果: orange
当前水果总数: 4   '''
#循环使用 else 语句
#在 python 中,for … else 表示这样的意思,for 中的语句和普通的没有区别,
#else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while … else 也是一样。
'''#实例1:
for num in range(10,20):  # 迭代 10 到 20 之间的数字
   for i in range(2,num): # 根据因子迭代
      if num%i == 0:      # 确定第一个因子
         j=num/i          # 计算第二个因子
         print ('%d 等于 %d * %d' % (num,i,j))
         break            # 跳出当前循环
   else:                  # 循环的 else 部分
      print (num, '是一个质数')
#运用结果:
10 等于 2 * 5
11 是一个质数
12 等于 2 * 6
13 是一个质数
14 等于 2 * 7
15 等于 3 * 5
16 等于 2 * 8
17 是一个质数
18 等于 2 * 9
19 是一个质数  '''
#实例2:
'''#打印直角三角形
rows=int(input('输入列数:'))
i=j=k=1 #声明变量,i用于控制外层循环(图形行数),j用于控制空格的个数,k用于控制*的个数
print('直角三角形1')
for i in  range(0,rows):
    for K in range(0,rows-i):
        print('*', end='')  # end=''表示不换行
        k +=1
    i+=1
    print('
')
#运用结果:
输入列数:4
直角三角形1
****
***
**
*     '''
'''#打印实心等边三角形
rows=int(input('输入列数:'))
print ("打印空心等边三角形,这里去掉if-else条件判断就是实心的")
for i in range(0, rows + 1):#变量i控制行数
    for j in range(0, rows - i):#(1,rows-i)
        print (' ',end='')
        j += 1
    for k in range(0, 2 * i - 1):#(1,2*i)
       if k == 0 or k == 2 * i - 2 or i == rows:
            if i == rows:
                if k % 2 == 0:#因为第一个数是从0开始的,所以要是偶数打印*,奇数打印空格
                    print ("*",end='')
                else:
                    print(" ",end='')  #end='' 可以起到不换行的作用
            else:
               print ("*",end='')
       else:
            print (" ",end='')
       k += 1
    print ("
")
    i += 1   
原文地址:https://www.cnblogs.com/nini0806/p/13278626.html