python的逻辑控制

python逻辑执行

python条件控制

python 复制代码
# 在python中,不使用括号将条件固定
if exp: # 条件满足则执行,后续语句不执行
    # 不使用{}将执行语句固定,也没有;作为结尾
    statement
elif exp:# 条件满足则执行,后续语句不执行
    statement
else:# 上面的条件都不满足则执行
    statement

以上就是条件语句基本执行过程。

python 复制代码
a = [1,2,3,4,5]
if 1 in a:
    print("1在a里面")
else:
    print("1不在a里面")
    
if 1 not in a:
    print("1不在a里面")
elif 1 in a:
    print("在a里面")
if嵌套
python 复制代码
if 表达式1:
    语句
    if 表达式2:
        语句
    elif 表达式3:
        语句
    else:
        语句
elif 表达式4:
    语句
else:
    语句

if语句可以嵌套在if语句中,这样写时需要注意语句的对其方式,因为python是使用空格进行对齐的。

python 复制代码
num = int(input("请输入一个数字:"))
if num % 5 == 0:
    if num % 3 == 0:
        print("你的数字可以被5和3整除")
    else:
        print("你的数字可以被5整除,不能被3整除")
else:
    if num % 3 == 0:
        print("你的数字可以被3整除,不能被5整除")
    else:
        print("你的数字不可以被5和3整除")
循环语句
python 复制代码
# while :满足条件执行,不满足条件不执行
while True:
    语句 # 无限循环
# for : 满足条件执行,不满足条件不执行
for 条件循环:
    语句

示例:

python 复制代码
# 简单示例
for i in range(1, 6):
    print(i, end=",")
i = 5
while i >= 0:
    print(i, end=",")
    i -= 1
内置函数range()

range()是在python中比较常用的一个函数,在range()函数参数为数字

range(1,6)范围中等于1小于6的数字:12345

range(1,6,2)范围中1~5,跨步为2--》1,3,5步长也可以为负数,负数就是倒着进行读取

range(stop):可以填写列表,元组,集合以及其他数据类型。

示例:

python 复制代码
# 配合函数一起使用
# 简单用法
for i in range(1, 6):
    print(i, end=",")

print("分割线------------------------------")
# 跨步用法
for i in range(1, 6, 2):
    print(i, end=",")

print("分割线------------------------------")
# 步长为负数
for i in range(6, 1, -2):
    print(i, end=",")

print("分割线------------------------------")
# 应用列表
list1 = [1, 2, 3, 4, 5, 6]
for i in range(len(list1)):
    print(i, end=",")
Pass语句

在一些暂时不用实现的方法来使用pass可以保证暂时不会报错。

在python中同样有bleakcontinue语句,和其他语言都是一样的用法。

break:退出当前循环。

continue:结束当前执行的循环,直接开启下一段循环(如果有的话)。

python 复制代码
for i in range(1, 6):
    if i == 5:
        break
    print(i, end=",")
print("\n分割线------------------------------")
for i in range(1, 6):
    if i == 3:
        continue
    print(i, end=",")

python迭代器与生成器

iter()和next(),配合使用。首先iter是作为一个对象存在的,而next是用于遍历这个对象存在的。

python 复制代码
list = [1,2,3,4]
it = iter(list)
print(next(it))
print(next(it))

这个next相当于做了一个循环的作用。

在python中创建一个迭代器

在python中创建一个迭代器需要实现两个函数iter(),next()。使用__iter__中返回一个特殊的迭代对象。这个迭代器实现了一个__next__方法将通过标识将迭代完成。

python 复制代码
class MyNumbers:
  def __iter__(self):
    self.a = 1
    return self
 
  def __next__(self):
    x = self.a
    self.a += 1
    return x
 
myclass = MyNumbers()
myiter = iter(myclass)
 
print(next(myiter), end=" ")
print(next(myiter), end=" ")
print(next(myiter), end=" ")
print(next(myiter), end=" ")
print(next(myiter), end=" ")

在实现迭代器中需要使用到一个标识符Stoplteration 用于终止标识迭代的完成。

python 复制代码
def __next__(self):
    if self.a <= 20:
      x = self.a
      self.a += 1
      return x
    else:
      raise StopIteration
生成器yield

yield:相当于是一个暂停键!不过也可以将这个看作一个迭代器,因为作为一个生成器,当执行到生成器这段代码时,yield会将结果返回,执行下一段代码,然后执行后又会回到这段代码中。

使用yeild来写一个__斐波那契__数(也就是a = 1 ,b = 1,c = a+b a = b,b = c+a......)相信记得的同学应该可以看明白

python 复制代码
import sys
def fibonacci(n):  # 生成器函数
    a, b = 1, 1
    count = 0
    while True:
        if count >= n:  # 检查是否已达到所需的斐波那契数数量
            break  # 退出循环
        yield a
        a, b = b, a + b
        count += 1  # 更新计数
yie = fibonacci(5)  # 生成前5个斐波那契数
while True:
    try:
        print(next(yie), end=" ")
    except StopIteration:
        sys.exit()  # 调用函数来退出程序
相关推荐
社交怪人7 分钟前
【算平均分】信息学奥赛一本通C语言解法(题号2071)
c语言·开发语言
郭涤生1 小时前
不同主机之间网络通信-以太网连接复习
开发语言·rk3588
山居秋暝LS1 小时前
【无标题】RTX00安装paddle OCR,win11不能装最新的,也不能用GPU
开发语言·r语言
卢锡荣1 小时前
单芯通吃,盲插标杆 —— 乐得瑞 LDR6020,Type‑C 全场景互联 “智慧芯”
c语言·开发语言·计算机外设
Xin_ye100861 小时前
C# 零基础到精通教程 - 第七章:面向对象编程(入门)——类与对象
开发语言·c#
彦为君1 小时前
Agent 安全:从权限提示到沙箱隔离
python·ai·ai编程
AI科技星2 小时前
《数学公理体系·第三部·数术几何》(2026 年版)
c语言·开发语言·线性代数·算法·矩阵·量子计算·agi
审判长烧鸡2 小时前
【Go工具】go-playground是什么组织?官方的?
开发语言·安全·go
PILIPALAPENG2 小时前
Python 语法速成指南:前端开发者视角(JS 类比版)
前端·人工智能·python
kkeeper~2 小时前
0基础C语言积跬步之字符函数与字符串函数(上)
c语言·开发语言