1.在模拟器目录下安装模拟器的Python API模块。
2.运行模拟器。
3.设置环境变量 SIMULATOR_HOST 和 BRIDGE_HOST 。
4.运行你的AD栈。示例的脚本是为Apollo 5.0编写的,如何编辑在其它AD栈运行的脚本的方法如下:
5.运行脚本
6.设置AD栈的终点。在示例场景中,终点是当前直线末端。
7.通过以上步骤,自动驾驶车辆应该朝着NPC驶去,它应该要避免与NPC发生碰撞。
在每个示例场景和测试案例中,都有一部分是设置EGO车辆的:
如果使用不同的AD栈,车辆的类型应该进行更改。
本示范为LGSVL开发团队使用Python API编写的Python脚本,目的是为了测试特定的场景或执行特定的任务,具体脚本可在 这里 找到。
我们使用Python API创建了一些简单的基本场景,可以在 这里 找到如何运行这些场景的步骤。
下图的场景假设模拟器可以连接到一个Apollo5.0实例中。可以在 这里 找到如何与Apollo5.0连接的教程。Apollo模块需要按下图所示进行启动(位置、感知、规划、预测、路线规划、交通灯、转换、控制)。
if else是Python中的常用选择语句,允许程序根据满足某个条件来决定是否执行某一段代码。它的使用场景包括:
1. 根据用户输入的数据来决定程序的下一步操作
2. 将程序的某些抽象的条件语句转变为明确的选择
3. 如果函数的执行结果和预期不一致时,程序可以自动检测出错误并根据错误类型执行相应的处理
因为Python是通用的。
Python有许多实现(利用其他语言来写Python解释器),不仅仅是CPython。它可以基于Java,C,Python自己,C#,Ruby,Javascript等各个语言制作。可以这么说,Python的底层实现语言是最丰富的,绝对没有之一。所以它可以和C/C++/Java/C#/Ruby/Javascript等各类语言直接交换数据。不仅仅通过REST/JSON/XML交换。
1、python通常不作为工程语言出现。就是正规的软件生产不使用它。主要用java,c#,xml,c。至于为什么,这是软件工程的需要。python不具有完整的语法检查。
2、python并不为特定目的而产生。虽然它更适用于系统维护。不过它就是一个通用的脚本语言。
3、python一般认为是脚本语言,或者说是动态语言,速度慢肯定是所有解释性语言的缺点了,除此之外,python的多线程无法在多核上运行肯定也是需要解决的问题。
4、Python的实现是用ansic编写的,可以运行在目前所有主流平台上,手机、pad上均可运行Python程序,其下的程序包也具有可移植性。