Python 分支和循环操作教程

Python入门教程:分支和循环操作

Python是一种清晰易懂的进阶编程语言,它在处理分支、循环和遍历时提供了高效而自然的操作方式。


一、分支操作

1.1 基础 if 语法

Python中的分支语法以 if 开始,举例如下:


x = 10     # 变量 x = 10
if x > 0:  # 如果 x 大于0, 输出"x是正数"的结果
    print("x是正数")

执行结果:

x是正数
1.2 if-else 分支

使用 else,尽管不满足条件也有一个以下分支:

x = -10
if x > 0: # 如果 x 大于 0 输出 x是正数
    print("x是正数")
else:     # 否则 (代表上述条件均不满足), 输出: x不是正数
    print("x不是正数")

执行结果:

x不是正数
1.3 if-elif-else 式分支

对于多个条件,使用 elif 来增强逻辑。

if 条件1 : 如果 满足条件1,执行下面的代码块. (不满足不执行)
    ....省略的代码块;
elif 条件2 : 否则, 如果满足条件2, 执行下面代码块. 
    ....省略的代码块;
elif 条件3 : 否则仍还不满足, 如果满足条件3, 执行下面代码块.
    ....省略的代码块;
else : 否则, 上述全都不满足的情况, 执行下面的代码块
    ....省略的代码块;

例如:

x = 0
if x > 0:
    print("x是正数")
elif x == 0:
    print("x是0")
else:
    print("x是负数")
1.4 条件符号表格

以下是Python中常见条件符号及其含义:

条件符号含义示范
>大于a > 10
<小于a < 0
>=大于等于a >= 100
<=小于等于a <= -1
==等于a == 1
!=不等于a != b
anda >= 0 and a <= 9
ora == 1 or b == 2
not非/取反not a == 1 ,相当于 a != 1

二、循环操作

2.1 for 循环

Python 简洁的 for 进行循环操作:

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

这里的 range(5) 生成了 0-4 数字。

2.2 while 循环

循环以特定条件为结束标准:

index = 0
while index < 5: # 满足index值 小于 5 情况, 会继续执行代码.
    print(index) # 输出 当前index值
    index += 1   # 循环进入,执行到这里时 index值自身+1.
2.3 选择 for 和 while
  • 循环次数确定时使用 for
  • 条件不确定时使用 while
2.4 退出和跳过

使用 breakcontinue

for i in range(10):
    if i == 5:  # i等于5时, break(跳出当前到for循环代码), 
        break   # 停止当前for循环
    print(i)  # 只打印 0-4
# 输出: 0 1 2 3 4


for i in range(5):
    if i == 3:   # i等于3 执行下面的代码. 
        continue # 仅当前i=3时, 后续逻辑不执行, 跳过. 
    print(i)  # 不打印 3
# 输出 0 1 2 4 5 

更多解释:

当多个for嵌套适合, break 跳出的时, 是break所在for这一层终止. 不影响外层的for.

for i in range(10): 
    for x in range(5): 
        if x == 2: 
            break # 仅终止的是 for x in range(5):  # 循环. 外层循环无影响.
    print(i) # 外层的循环输出, 结果: 0 1 2 3 4 5 6 7 8 9


三、遍历

3.1 字符串

通过字符串进行遍历:

s = "Python"
for char in s:
    print(char)

执行结果:

P
y
t
h
o
n
3.2 列表和连表

什么是集合请看这个: 点击查看: 列表、元组、字典和集合的教程

对于集合数据结构:

lst = [1, 2, 3, 4]
for item in lst:
    print(item)

以及解构元组:

pairs = [(1, 'a'), (2, 'b')]
for num, letter in pairs:
    print(f"{num} -> {letter}")

四、实例

实例 1:

列表过滤例子:获得numbers集合的偶数.

numbers = [1, 2, 3, 4, 5]
# 与2取余数能除尽偶数
filtered = [n for n in numbers if n % 2 == 0] 
print(filtered)  # 返回 [2, 4]

或 结果同上.

numbers = [1, 2, 3, 4, 5]
filtered = []
for num in numbers : 
    if num % 2 == 0 : 
        filtered.append(num)

print(filtered) # 输出 [2, 4]

实例 2:输出表格

数据表格:行列乘法, 1x1=1, 2x2=3, 3x5=15

for i in range(1, 6): # 循环 1,2,3,4,5
    for j in range(1, 6):  # 循环 1,2,3,4,5
        print(i * j, end="\t") # end 输出后的结束符合用制表符分割
    print()

模拟代码执行过程(讲解执行过程, 不是输出)

第一次执行: 循环 i = 1, 进入内循环执行j=1,2,3,4,5 (循环5次)
第一次计算: 1x1	1x2	1x3	1x4	1x5
第二次执行: 循环 i = 2, 进入内循环执行j=1,2,3,4,5 (循环5次)
第一次计算: 2x1	2x2	2x3	2x4	2x5
.....以此类推

最终执行输出如下:

1	2	3	4	5	
2	4	6	8	10	
3	6	9	12	15	
4	8	12	16	20	
5	10	15	20	25	
实例 3:同时列出数据和数据下标
lst = ['a', 'b', 'c']
for i, val in enumerate(lst): 
    print(f"Index: {i}, Value: {val}")
实例 4:循环获得一个金字塔
height = 5
for i in range(1, height + 1):
    print(' ' * (height-i) +'*' * i + '*' * (i-1))

执行输出:

    *
   ***
  *****
 *******
*********

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值