gpt4 book ai didi

python - 使用 Python 构建什么样的应用程序?

转载 作者:IT老高 更新时间:2023-10-28 22:19:55 26 4
gpt4 key购买 nike

我想知道

Python 适合什么样的应用程序?

我是 Python 世界的新手,但我知道它是一种类似于 Perl 的脚本语言,但我不确定使用 Python 构建什么样的应用程序,如果有人能提供一些有用的信息,我将不胜感激。

最佳答案

很难想到 Python 不适合的各种通用应用程序,但有几种,就像几乎所有类似于它的高级语言一样,它可能被认为是一种特殊的并且可能是次等选择。

在“硬实时”应用程序中,所有的动态内存分配和释放,以及尤其是垃圾收集,都是不受欢迎的,这是可以理解的;这排除了几乎所有现代语言(包括 Python,还有 Java、C# 等),因为几乎所有语言都依赖于动态内存处理和某种类型的垃圾收集。

如果您正在为“嵌入式设备”编程,并且您希望大量生产和销售,那么 ROM 的每一点都可能会显着增加总体成本,因此您需要一种专注于将应用程序压缩到最后一点——任何依赖于丰富的支持运行时环境或操作系统的语言(包括 Python,还有 Java、C# 等)无疑会迫使你在更多的 ROM 上花费额外的钱(考虑像古老的 Forth 这样的线程解释语言:它们可以使实质性应用程序的代码比简单的机器代码更紧凑!)。

还有许多其他领域具有相似的限制(主要集中在内存:专注于使用尽可能少的位和/或将执行严格限制在精确预定义的限制内——没有动态、没有分配、没有垃圾收集等,等等),并且基本上这种情况会以类似的方式再次倾斜(例如,有服务器应用程序,旨在在无数服务器上运行,如果用 C++ 编码,这可以为每台服务器节省许多兆字节 [尤其是如果没有“所谓的智能"指针;-)] 而不是 Java、Python、C# 等)。

当然,大多数现代语言(Python、Java、C# 等)选择进行动态内存分配、垃圾收集等都有很好的理由,尽管这些技术是不利方面的应用领域很重要:本质上,如果你能负担得起如此好的内存处理,编写应用程序就会变得非常、非常容易,并且如果你缺乏这种支持,那么与需要仔细管理内存相关的一整类问题和错误就会消失——程序员的工作效率真的会飙升。 ..如果可以提供垃圾收集等,那就是。例如,如果一个应用程序要在数百或数千台服务器上运行,我可能不会费心用 C++ 对其进行手动内存管理以节省内存。只有在数以万计的服务器上,所有这些额外兆字节的经济性才真正发挥作用。

请注意,尽管“解释型语言”(具有丰富的底层运行时或 VM,如 Java、C#、Python 等)“速度慢”的普遍误解,但实际上对于大多数 CPU 密集型应用程序(例如科学计算),Python 非常适合,只要考虑到“丰富的支持运行时环境”(例如 numpy)。所以,这并不是一个真正的因素——尽管内存消耗和垃圾收集可以,在某些领域。

关于python - 使用 Python 构建什么样的应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1452509/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com