gpt4 book ai didi

python - os.system ("pwd") 和 os.getcwd() 之间的区别

转载 作者:行者123 更新时间:2023-12-02 16:16:59 24 4
gpt4 key购买 nike

我对以下 3 个函数系列有一个基本疑问:

举个例子,我想知道Python当前的工作目录。因此,实现这一目标的一些方法可能是:

os.system("pwd")

os.getcwd()

subprocess.Popen(['pwd'], stdout=PIPE, stderr=PIPE)

我在网上找到了许多资源来区分上面的第三个与其余的,但找不到太多特别是上面前两个之间的区别。

请帮助我理解这3者之间的区别,尤其是

  1. 从输出的角度
  2. 从性能角度来看
  3. 从实现的角度来看,即这三个内部是如何实现的,例如,它们中的每一个是否生成一个新进程,它们如何与内核交互等。

任何可供我 self 引用的指针也将不胜感激。

最佳答案

os.getcwd() 调用会更快,因为它不依赖于任何外部依赖项。您的第一个和最后一个示例都执行一个单独的进程,即 pwd 系统命令,并将其输出作为字符串返回。好吧,您的 Popen() 示例将要求您使用另一个调用来获取其输出,但我离题了。

根本不需要调用外部命令;只需使用 os.getcwd() 即可。

关于python - os.system ("pwd") 和 os.getcwd() 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37638740/

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