当前位置: 首页 > news >正文

【Python基础入门7】程序的组织结构、range函数及pass语句

一、程序的组织结构与range函数

众所周知,我们的计算机控制流程有:顺序结构、选择结构、循环结构。

顺序结构比较简单,就是程序从上到下地执行代码,中间没有任何的判断和跳转,直到程序结束。固在此不再细说。

选择结构则是程序根据判断条件的布尔值,选择性地执行某部分代码。

1、选择结构

选择结构又分为:单分支结构、双分支结构、多分支结构

单分支结构:

if 条件表达式:    # 勿忘冒号
    条件执行体

双分支结构: 

if 条件表达式:    # 勿忘冒号
    条件执行体1
else:
    条件执行体2

多分支结构:

if 条件表达式1:    # 勿忘冒号
    条件执行体1
elif 条件表达式2:
    条件执行体2
elif 条件表达式N:
    条件执行体N
else:
    条件执行体

 嵌套if的使用:

if 条件表达式:    # 勿忘冒号
    if 内层条件表达式:
        内层条件执行体1
    else:
        内层条件执行体2
else:
    条件执行体

2、range函数

在讲循环结构之前,我们要先认识一个重要的函数——>range函数

range函数用于生成一个整数序列(起始值默认为0、步长默认为1),其返回值是一个迭代器对象

range(4)    # 创建一个[0, 4)之间的整数序列,步长为1
range(2, 6)    # 创建一个[2, 5)之间的整数序列,步长为1
range(1, 6, 2)    # 创建一个[1, 5)之间的整数序列,步长为2

>>> 0, 1, 2, 3
>>> 2, 3, 4, 5
>>> 1, 3, 5

 range函数的优点:占用的内存空间都是相同的,无论range对象表示的整数序列有多长,都仅需存储start(起始位置)、stop(终点位置)、step(步长)。只有当用到range对象时,才会去计算序列中的相关元素

3、循环结构

Python中的循环结构分为for-in循环和while循环

1、for-in循环

在for-in循环中,in表达从(字符串、序列等)中以此取值(俗称“遍历”)

注意:for-in遍历的对象必须为可迭代对象

for 变量 in 可迭代对象:
    循环体

例如: 

for i in range(10):
    print(i, end=' ')

for j in 'Hello':
    print(j, end=' ')

>>> 0 1 2 3 4 5 6 7 8 9 
>>> H e l l o 

2、while循环

while 条件表达式:
    条件执行体(循环体)

例如:

n = 0
while n < 5:
    print(n, end=' ')
    n += 1

>>> 0 1 2 3 4 

3、流程控制语句continue和break 

continue和break已经是我们熟知的老朋友了,因此它们在循环结构中的运用就不再啰嗦了

for _ in range(3):
    n = int(input())
    if n == 6:
        print('YES')
        break
    else:
        print('NO')
for i in range(1, 51):
    if i % 5 != 0:
        continue
    print(i, end=' ')

>>> 5 10 15 20 25 30 35 40 45 50 

 4、else语句

else在选择结构中就出现过了,这里再介绍一下它在循环结构中的用法,当且仅当在没碰到break时执行else

例如:(在while循环中同理)

for _ in range(3):
    n = int(input())
    if n == 666:
        print('YES')
        break
    else:
        print('NO')
else:
    print('哥,错三次了')

>>> 5
>>> NO
>>> 6
>>> NO
>>> 7
>>> NO
>>> 哥,错三次了

二、pass语句

pass语句作为占位符,它什么也不用干,用在语法上需要语句的地方即可

什么时候使用:搭建完语法结构,还没想好代码怎么写的时候

我们可以用在:1、if的条件执行体;2、for-in的循环体;3、函数体;

例如:

if a == b:
    pass
else:
    pass



for i in range(3):
    pass



def fun(k):
    pass

相关文章:

  • 基于hough霍夫变换的铁栏栅断裂处的检测算法matlab仿真
  • 学C++要不要先学C语言?
  • 基于JSP的房屋租赁系统
  • 13.Spring security权限管理
  • Python Matplotlib库:统计图补充
  • 猿创征文|数据结构-单链表详解(含完整代码)
  • [Valkyrie网络测试仪-软件使用技巧] - Scheduler动作录制,定制打流过程(中途启停/调整带宽/使能部分流量)
  • ENVI:如何进行遥感图像的分类?(支持向量机模型)
  • 刷题记录(NC50959 To the Max,NC236172 货船,NC16655 [NOIP2005]过河)
  • 【JS逆向系列】某乎x96参数3.0版本与jsvmp进阶
  • Markdown博客 设置字体大小、颜色、类型等样式
  • SATA系列专题之四:4.1 Command Layer命令分类详细解析
  • XAI将创建一套机器学习技术,使人类用户能够理解、适当信任并有效管理新一代人工智能合作伙伴
  • 大数据之ZooKeeper(二)
  • 2021CCPC新疆省赛题解BDEFGHIJK
  • 实现windows 窗体的自己画,网上摘抄的,学习了
  • 自己简单写的 事件订阅机制
  • Brief introduction of how to 'Call, Apply and Bind'
  • CSS居中完全指南——构建CSS居中决策树
  • Django 博客开发教程 16 - 统计文章阅读量
  • es的写入过程
  • Git 使用集
  • hadoop入门学习教程--DKHadoop完整安装步骤
  • LeetCode18.四数之和 JavaScript
  • Linux链接文件
  • Object.assign方法不能实现深复制
  • PermissionScope Swift4 兼容问题
  • Puppeteer:浏览器控制器
  • React组件设计模式(一)
  • Solarized Scheme
  • 安卓应用性能调试和优化经验分享
  • 从@property说起(二)当我们写下@property (nonatomic, weak) id obj时,我们究竟写了什么...
  • 多线程事务回滚
  • 聊聊springcloud的EurekaClientAutoConfiguration
  • 模仿 Go Sort 排序接口实现的自定义排序
  • 世界上最简单的无等待算法(getAndIncrement)
  • 数据库写操作弃用“SELECT ... FOR UPDATE”解决方案
  • LIGO、Virgo第三轮探测告捷,同时探测到一对黑洞合并产生的引力波事件 ...
  • 格斗健身潮牌24KiCK获近千万Pre-A轮融资,用户留存高达9个月 ...
  • 好程序员web前端教程分享CSS不同元素margin的计算 ...
  • 如何在招聘中考核.NET架构师
  • 小白应该如何快速入门阿里云服务器,新手使用ECS的方法 ...
  • ​油烟净化器电源安全,保障健康餐饮生活
  • (1)Android开发优化---------UI优化
  • (3)(3.5) 遥测无线电区域条例
  • (附源码)spring boot球鞋文化交流论坛 毕业设计 141436
  • (一)C语言之入门:使用Visual Studio Community 2022运行hello world
  • (一)Thymeleaf用法——Thymeleaf简介
  • **PyTorch月学习计划 - 第一周;第6-7天: 自动梯度(Autograd)**
  • .helper勒索病毒的最新威胁:如何恢复您的数据?
  • .NET 6 Mysql Canal (CDC 增量同步,捕获变更数据) 案例版
  • .Net Attribute详解(上)-Attribute本质以及一个简单示例
  • .NET Core 将实体类转换为 SQL(ORM 映射)
  • .NET/C# 使窗口永不激活(No Activate 永不获得焦点)
  • .Net调用Java编写的WebServices返回值为Null的解决方法(SoapUI工具测试有返回值)