注意: 虽然 JavaScript 对于本网站不是必需的,但您与内容的互动将受到限制。请开启 JavaScript 以获得完整的体验。

为什么 Python 对 VR 社区至关重要

为什么 Python 对 VR 社区至关重要

Andrew Beall,WorldViz 首席科学家

信不信由你,Python 首次发布至今已有 30 年,而我们也将它作为 Vizard 虚拟现实 (VR) 开发平台的基石,几乎同样久远。你可能还会惊讶地发现,VR 的历史几乎是 Python 的两倍!我们很久以前选择 Python 的原因本身就是一个故事,但值得注意的是,即使过了这么多年,Python 对我们和我们的客户来说,其价值也只增不减。

对我们而言,Python 塑造了我们的产品开发生命周期,我们坚信它是世界上最易用、最强大的脚本语言。你情不自禁地会接受快速应用程序开发范式,这使我们能够克服诸多挑战,例如为快速发展的 VR 行业快速构建硬件驱动程序。我们的客户群偏向科研领域,而 Python 丰富的社区及其共享库提供了无与伦比的现成功能。正如其他人所说,我们尽可能使用 Python 进行构建,只有在万不得已时才使用 C++。

对我们的客户而言,Python 在他们日常使用我们产品的体验中扮演着核心角色。我们提供的核心价值之一,就是将复杂的 3D 渲染引擎(能够满足研究人员所需的底层图形控制)的所有复杂性封装到一个友好的 Python 界面中。Python 被特意设计成一种令人愉悦的语言,这一事实表明,各种新手程序员可以多快地开始编写自己的项目。与 Java 和 C++ 不同,Python 在如何做事方面具有内在的清晰性,而这一特性使我们的客户感到自我赋能和自信,足以探索项目并做出他们原本会觉得超出了自己编程专业知识范围的发现。

三个理由说明 Python 为何对科学家如此重要

1) Python 易于学习 我们认为这是 Python 成为科学研究绝佳选择的最重要原因。我们已经看到数百名没有 Python 经验的研究人员在一两个月内熟练掌握 Python,并成功构建了虚拟现实实验。对于我们的客户而言,3D 图形和实时虚拟现实环境的世界突然变得触手可及,可用于研究。当我们的客户看到 Python 如何轻松地从传感器收集数据、将其保存到文件,然后使用 numpy 和 matplotlib 等 Python 库添加数据分析和可视化管道时,他们会感到更加兴奋。

2) Python 易于阅读 除非你之前接触过大量代码,否则这一点可能无法完全引起共鸣,但请相信我们,这一点至关重要。我们听到无数客户称,他们现在感到欣慰,因为他们可以阅读、理解,甚至修改实验室中其他人构建的项目。Python 软件基金会研究员 Alex Martelli 写道:“在 Python 文化中,将某物描述为‘巧妙’并不被认为是赞美。巧妙的编程通常除了专家之外,其他人难以阅读。Python 旨在易于阅读并立即可用。”

3) Python 拥有庞大的科学社区 当我们说你几乎总能通过谷歌搜索“python”加上你的目标关键词来找到有用的库时,这绝不是开玩笑。用于科学研究的库简直数不胜数,几乎所有都是开源的,并在一个令人惊叹的社区中自由共享。众多领域的科学家已将 Python 作为分析的首选语言,因此在开始新项目时,很容易借鉴他人的成果。尝试用其他语言进行类似的搜索,你会发现巨大的差异。或者,比较将外部库整合到 Python 中与其他语言所需的工作量,你会感到惊讶。

那么使用 Python 会有性能损失吗?我们有时会遇到这个问题,但这通常是一个“红鲱鱼”(转移注意力的话题)。当然,Python 和 C 编译代码属于不同类别,如果你选择正确的计算问题,你可以证明 C/C++ 要快得多。然而,处理数字或类似任务的时间并不是我们大多数用户关心的问题。如今 GPU 和 CPU 都非常快,Python 的效率问题很少出现。然而,项目在 Python 中完成得更快的情况却并不少见。确定对你来说最重要的事情,并相应地衡量速度。

总而言之,无论你是开发代码以将一个人沉浸在严格控制的虚拟世界中以研究他们对刺激的反应,还是使用机器学习来模拟 COVID-19 的传播,你都应该尝试一下 Python。你不会后悔的。