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

python自述3

Python

条件控制

if语句的一般形式如下所示:
if condition_1:
statement_block_1
elif condition_2:
statement_block_2
else:
statement_block_3

Python 中用 elif 代替了 else if,所以if语句的关键字为:if – elif – else。

注意:

1、每个条件后面要使用冒号 :,表示接下来是满足条件后要执行的语句块。
2、使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。
3、在 Python 中没有 switch…case 语句,但在 Python3.10 版本添加了 match…case

在嵌套 if 语句中,可以把 if…elif…else 结构放在另外一个 if…elif…else 结构中

if 表达式1:语句if 表达式2:语句elif 表达式3:语句else:语句
elif 表达式4:语句
else:语句

match…case

3.10 增加了 match…case 的条件判断,不需要再使用一连串的 if-else 来判断了。

match 后的对象会依次与 case 后的内容进行匹配,如果匹配成功,则执行匹配到的表达式,否则直接跳过,_ 可以匹配一切。

match subject:case <pattern_1>:<action_1>case <pattern_2>:<action_2>case <pattern_3>:<action_3>case _:<action_wildcard>

case _: 类似于 C 和 Java 中的 default:,当其他 case 都无法匹配时,匹配这条,保证永远会匹配成功。

一个 case 也可以设置多个匹配条件,条件使用 | 隔开

循环语句

while 语句的一般形式:
while 判断条件(condition):
执行语句(statements)……
在 Python 中没有 do…while 循环

无限循环
通过设置条件表达式永远不为 false 来实现无限循环,实例如下:

#!/usr/bin/python3var = 1
while var == 1 :  # 表达式永远为 truenum = int(input("输入一个数字  :"))print ("你输入的数字是: ", num)print ("Good bye!")

可以使用 CTRL+C 来退出当前的无限循环

while 循环使用 else 语句

如果 while 后面的条件语句为 false 时,则执行 else 的语句块。

while <expr>:<statement(s)>
else:<additional_statement(s)>

expr 条件语句为 true 则执行 statement(s) 语句块,如果为 false,则执行 additional_statement(s)。

简单语句组

类似 if 语句的语法,如果你的 while 循环体中只有一条语句,你可以将该语句与 while 写在同一行中。

for 语句

循环可以遍历任何可迭代对象,如一个列表或者一个字符串。

for <variable> in <sequence>:<statements>
else:<statements>
#!/usr/bin/python3sites = ["Baidu", "Google","Runoob","Taobao"]
for site in sites:print(site)

可用于打印字符串中的每个字符:

#!/usr/bin/python3word = 'runoob'for letter in word:print(letter)

for…else

for…else 语句用于在循环结束后执行一段代码。

for item in iterable:# 循环主体
else:# 循环结束后执行的代码

当循环执行完毕(即遍历完 iterable 中的所有元素)后,会执行 else 子句中的代码,如果在循环过程中遇到了 break 语句,则会中断循环,此时不会执行 else 子句。

range() 函数

遍历数字序列,可以使用内置 range() 函数。它会生成数列。
也可以使 range() 以指定数字开始并指定不同的增量(甚至可以是负数,有时这也叫做’步长’):

pass 语句

pass是空语句,是为了保持程序结构的完整性。
pass 不做任何事情,一般用做占位语句,如下实例

>>>while True:
...     pass  # 等待键盘中断 (Ctrl+C)

最小的类:

>>>class MyEmptyClass:
...     pass

实例在字母为 o 时 执行 pass 语句块:

#!/usr/bin/python3for letter in 'Runoob': if letter == 'o':passprint ('执行 pass 块')print ('当前字母 :', letter)print ("Good bye!")

斐波纳契数列

每个数字是前两个数字之和
#!/usr/bin/python3

Fibonacci series: 斐波纳契数列

两个元素的总和确定了下一个数

a, b = 0, 1
while b < 10:print(b)a, b = b, a+b

其中代码 a, b = b, a+b 的计算方式为先计算右边表达式,然后同时赋值给左边,等价于:

n=b
m=a+b
a=n
b=m

右边的表达式会在赋值变动之前执行。右边表达式的执行顺序是从左往右的。

end 关键字

关键字end可以用于将结果输出到同一行,或者在输出的末尾添加不同的字符,实例如下:

#!/usr/bin/python3# Fibonacci series: 斐波纳契数列
# 两个元素的总和确定了下一个数
a, b = 0, 1
while b < 1000:print(b, end=',')a, b = b, a+b

输出如下:

1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,

推导式

是一种独特的数据处理

http://www.lryc.cn/news/436956.html

相关文章:

  • Redis常见的数据结构
  • 批量插入insert到SQLServer数据库,BigDecimal精度丢失解决办法,不动代码,从驱动层面解决
  • 随手记:uniapp小程序登录方式和小程序使用验证码登录
  • 【Hadoop|HDFS篇】DataNode概述
  • Vue2 VueRouter学习笔记
  • 3D培训大师,化工企业安全教育与应急演练的新助力
  • 斯坦福大学论文润色chat-gpt指令
  • 简单硬件在环搭建(ROS+Prescan+Carsim+simulink)
  • 【Python 数据分析学习】Pandas基础与应用(1)
  • pytorch入门(1)——pytorch加载数据初认识
  • Spring下载文件
  • 如何在数据库中备份表:操作指南与注意事项
  • 【数据结构】第八节:链式二叉树
  • Fair Graph RepresentationLearning via Diverse Mixture-of-Experts
  • 电机驱动开发之驱动板
  • STM32F1 HAL库笔记2_HAL 系统驱动程序
  • el-table实现当内容过多时,el-table显示滚动条,页面不显示滚动条
  • Java面试篇基础部分-Java中的异常以及异常处理
  • win11 MySQL的坑
  • stm32单片机个人学习笔记1(简单介绍)
  • python中@staticmethod、@classmethod用法
  • Harmony Next 文件命令操作(发送、读取、媒体文件查询)
  • Go语言中的链表与双向链表实现
  • 开始一个WPF项目时的记忆重载入
  • 用go语言实现树和哈希表算法
  • 基于SpringBoot+Vue+MySQL的校园健康驿站管理系统
  • 深入理解MATLAB中的事件处理机制
  • 线程--线程同步
  • 【QT】Qt窗口
  • 场外个股期权怎么给股票加杠杆?