图解 Python 编程(9) | for循环(附要点速查表·完结)

本文详细介绍了Python中的for循环语句,包括遍历序列、通过索引迭代、使用else语句以及经典案例——绘制图形。通过实例展示了如何利用for循环绘制空心等边三角形和菱形。此外,还提供了视频教程链接和相关Python编程速查资料。
摘要由CSDN通过智能技术生成

ShowMeAI研究中心


1.Python-for循环语句

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

语法:

for循环的语法格式如下:

for iterating_var in sequence:
   statements(s)

for循环语句的基本形式

流程图:

for循环语句的执行流程

代码实例(代码可以在在线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站查看有【中英字幕】的版本

【双语字幕+资料下载】Python 3全系列基础教程,全程代码演示&讲解!10小时视频42节,保证你能掌握Python!快来一起跟着视频敲代码~ <快速入门系列>


一键运行所有代码

图解Python编程系列 配套的所有代码,可前往ShowMeAI 官方 GitHub,下载后即可在本地 Python 环境中运行。能访问 Google 的宝宝也可以直接借助 Google Colab一键运行与交互学习!

下载Python要点速查表

Awesome cheatsheets | ShowMeAI速查表大全 系列包含『编程语言』『AI技能知识』『数据科学工具库』『AI垂直领域工具库』四个板块,追平到工具库当前最新版本,并跑通了所有代码。点击 官网GitHub 获取~

👇 Python 速查表(部分)

ShowMeAI Python 3速查表ShowMeAI Python 3速查表

拓展参考资料

ShowMeAI图解Python编程系列推荐(要点速查版)

ShowMeAI系列教程精选推荐

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ShowMeAI

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值