关于python:图解python-for循环

作者:韩信子@ShowMeAI
教程地址:http://www.showmeai.tech/tuto…
本文地址:http://www.showmeai.tech/article-detail/72
申明:版权所有,转载请分割平台与作者并注明出处


1.Python-for循环语句

Python中有很多序列状态的数据结构(如列表或字符串等),能够应用for循环进行遍历。

语法:

for循环的语法格局如下:

for iterating_var in sequence:
   statements(s)

流程图:

代码实例(代码能够在在线python3环境中运行)

for letter in 'ShowMeAI':     # 第一个实例
   print("以后字母: %s" % letter)
 
fruits = ['banana', 'apple',  'mango']
for fruit in fruits:        # 第二个实例
   print('以后水果: %s'% fruit)
 
print("实现!")

以上代码输入后果:

以后字母: S
以后字母: h
以后字母: o
以后字母: w
以后字母: M
以后字母: e
以后字母: A
以后字母: I
以后水果: banana
以后水果: apple
以后水果: mango
实现!

2.通过序列索引迭代

另外一种执行循环的遍历形式是通过索引,如下实例(代码能够在在线python3环境中运行):

fruits = ['香蕉', '苹果',  '葡萄']
for index in range(len(fruits)):
   print('以后水果 : %s' % fruits[index])
 
print("实现!")

以上代码输入后果:

以后水果 : 香蕉
以后水果 : 苹果
以后水果 : 葡萄
实现!

以上实例咱们应用了内置函数 len() 和 range(),函数 len() 返回列表的长度,即元素的个数。 range返回一个序列的数。

3.循环应用else语句

在 python 中,for … else 示意这样的意思,for 中的语句和一般的没有区别,else 中的语句会在循环失常执行完(即 for 不是通过 break 跳出而中断的)的状况下执行,while … else 也是一样。

for num in range(20,30):  # 迭代 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 ('%d 是一个质数' % num)

以上代码输入后果:

20 等于 2 * 10
21 等于 3 * 7
22 等于 2 * 11
23 是一个质数
24 等于 2 * 12
25 等于 5 * 5
26 等于 2 * 13
27 等于 3 * 9
28 等于 2 * 14
29 是一个质数

4.经典案例-for循环绘图

咱们来应用学习到的for循环,绘制不同的图案,帮忙大家进一步相熟for循环用法

(1)空心等边三角形

代码能够在在线python3环境中运行。

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("\n")
    i += 1

(2)菱形

代码能够在在线python3环境中运行。

rows = int(input('输出列数: '))

print("打印空心等菱形,这里去掉if-else条件判断就是实心的")

rows = int(input('输出列数: '))

for i in range(rows):#变量i管制行数
    for j in range(rows - i):#(1,rows-i)
        print(" ", end='')
        j += 1
    for k in range(2 * i - 1):#(1,2*i)
        if k == 0 or k == 2 * i - 2:
            print("*", end='')
        else:
            print(" ", end='')
        k += 1
    print("\n")
    i += 1
    #菱形的下半局部
for i in range(rows):
    for j in range(i):#(1,rows-i)
        print(" ", end='')
        j += 1
    for k in range(2 * (rows - i) - 1):#(1,2*i)
        if k == 0 or k == 2 * (rows - i) - 2:
            print("*", end='')
        else:
            print(" ", end='')
        k += 1
    print("\n")
    i += 1

5.视频教程

请点击到B站查看【双语字幕】版本

https://www.bilibili.com/vide…

材料与代码下载

本教程系列的代码能够在ShowMeAI对应的github中下载,可本地python环境运行,能迷信上网的宝宝也能够间接借助google colab一键运行与交互操作学习哦!

本教程系列波及的Python速查表能够在以下地址下载获取:

  • Python速查表

拓展参考资料

  • Python教程—Python3文档
  • Python教程-廖雪峰的官方网站

ShowMeAI相干文章举荐

  • python介绍
  • python装置与环境配置
  • python根底语法
  • python根底数据类型
  • python运算符
  • python条件管制与if语句
  • python循环语句
  • python while循环
  • python for循环
  • python break语句
  • python continue语句
  • python pass语句
  • python字符串及操作
  • python列表
  • python元组
  • python字典
  • python汇合
  • python函数
  • python迭代器与生成器
  • python数据结构
  • python模块
  • python文件读写
  • python文件与目录操作
  • python谬误与异样解决
  • python面向对象编程
  • python命名空间与作用域
  • python工夫和日期

ShowMeAI系列教程举荐

  • 图解Python编程:从入门到精通系列教程
  • 图解数据分析:从入门到精通系列教程
  • 图解AI数学根底:从入门到精通系列教程
  • 图解大数据技术:从入门到精通系列教程

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理