python培训 第二课,条件控制,循环语句,break,continue,比较关系运算,逻辑运算,三目运算。

条件控制,循环语句

具体内容参照下面的博客。

https://www.cnblogs.com/gzhjj/p/10661008.html#_caption_0

https://blog.csdn.net/sxau_zhangtao/article/details/96495278

除了if有else之外,for/while循环也有else。需要注意的是有else的循环,break语句终止循环但不会触发else语句。

 

enumerate 函数(枚举)

使用内置 enumerate 函数进行遍历

for index, item in enumerate(sequence):         # enumerate  枚举

    process(index, item)                            # sequence   序列

 

range( [start,] stop [, step] ):生成一个整数数列,范围是[start,stop),步长是step,start默认为0,step默认为1。注意:range()生成的整数数列只能通过for 循环改查每个元素。

算术运算符

运算符

描述

实例

+

两个对象相加 a + b 输出结果 30

-

得到负数或是一个数减去另一个数 a - b 输出结果 -10

*

两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 200

/

x除以y b / a 输出结果 2

//

取整除

返回商的整数部分 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0

%

取余

返回除法的余数 b % a 输出结果 0

**

返回x的y次幂 a**b 为10的20次方, 输出结果 100000000000000000000

 

Python 比较运算符

比较运算符

功能

>

大于,如果运算符前面的值大于后面的值,则返回 True;否则返回 False

>=

大于或等于,如果运算符前面的值大于或等于后面的值,则返回 True;否则返回 False

<

小于,如果运算符前面的值小于后面的值,则返回 True;否则返回 False

<=

小于或等于,如果运算符前面的值小于或等于后面的值,则返回 True;否则返回 False

==

等于,如果运算符前面的值等于后面的值,则返回 True;否则返回 False

!=

不等于,如果运算符前面的值不等于后面的值,则返回 True;否则返回 False

is

判断两个变量所引用的对象是否相同,如果相同则返回 True

is not

判断两个变量所引用的对象是否不相同,如果不相同则返回 True

比较运算符 == is 的区别

== 用来比较两个变量的值是否相等,而 is 则用来比对两个变量引用的是否是同一个对象

逻辑运算符

运算符

逻辑表达式

描述

实例

and

x and y

布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。

(a and b) 返回 20。

or

x or y

布尔"或" - 如果 x 是 True,它返回 True,否则它返回 y 的计算值。

(a or b) 返回 10。

not

not x

布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。

not(a and b) 返回 False

  优先级:() > not > and > or

三目运算

为真时的结果 if 判断条件 else 为假时的结果(注意,没有冒号)

def fn(n):

    return n if n < 2 else fn(n-1)+fn(n-2)

对numpy标准库里的解释做一个介绍:

numpy.where(condition[, xy])

基于条件condition,返回值来自x或者y.

如果.

参数:

condition : 数组,bool值

When True, yield x, otherwise yield y.

x, y : array_like, 可选

x与y的shape要相同,当condition中的值是true时返回x对应位置的值,false是返回y的

返回值:

out : ndarray or tuple of ndarrays

①如果参数有condition,x和y,它们三个参数的shape是相同的。那么,当condition中的值是true时返回x对应位置的值,false是返回y的。

②如果参数只有condition的话,返回值是condition中元素值为true的位置索引,切是以元组形式返回,元组的元素是ndarray数组,表示位置的索引

内容概要:本文围绕“基于分布式模型预测控制的多个固定翼无人机一致性控制”展开,利用Matlab代码实现相关算法的仿真,旨在通过分布式控制策略实现多架固定翼无人机在复杂动态环境中的协同飞行与一致性控制。研究结合模型预测控制(MPC)方法,构建适用于多无人机系统的分布式优化框架,重点解决了通信受限、信息延迟及无中心化指挥条件下的协同稳定性问题。内容涵盖固定翼无人机的动力学建模、分布式MPC优化求解机制、一致性协议设计、通信拓扑结构分析以及仿真验证全过程,确保多机系统在保持队形一致的同时完成协同任务。; 适合人群:具备自动控制理论、无人机系统建模或多智能体协同控制基础,从事智能无人系统、集群控制、自动化与机器人等领域研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①应用于多无人机协同编队飞行、集群侦察、分布式任务执行等实际工程场景;②为分布式MPC算法在多智能体系统中的一致性控制提供可复现的Matlab仿真案例,推动先进控制理论向工程实践转化;③服务于科研论文复现、算法验证、控制系统课程设计与毕业课题参考。; 阅读建议:建议读者结合文中提供的Matlab代码逐模块运行与调试,重点关注分布式MPC在不同通信拓扑下对一致性收敛性能的影响,并可通过调整预测时域、权重矩阵与噪声参数等方式深化对算法鲁棒性与适应性的理解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值