python - 为什么 os.getcwd() 在 vs 代码和终端中返回不同的值?
问题描述
我写了一个简单的python3.7代码,如下所示:
import os
if __name__ == "__main__":
c = os.getcwd()
print(c)
此代码路径是~/PyStudy/OsTest/test.py
当我在 VS Code 和终端中运行它时,出现了不同的结果。
- 在终端中,它返回:
~/PyStudy/OsTest
- 在 VS Code 中,它返回:
~/PyStudy
没有/OsTest
.
我在 VS Code 中使用 Code Runner 来运行 python 代码。
我不知道为什么,请帮助我。
解决方案
因为它们在不同的目录中运行。
显然,您在父目录中启动了 VS Code,它只是继续在那里运行,直到您终止它。
同样显然,您首先通过cd
进入此目录从终端运行脚本。不过,没有必要这样做。尝试
( cd /; python3 ~/PyStudy/OsTest/test.py )
在终端提示符下。
一般来说,进程的当前工作目录是一种便利机制。通过使用相对路径,您可以编写更短的文件名;但在大多数情况下,您可以使用绝对文件名来代替在任何目录中运行的进程。
推荐阅读
- python - 像 JavaScript encodeURIComponent() 那样在 python 中编码 SVG 图像
- python - Float 中的错误不能解释为旧代码中的整数
- routes - 某个特定网站在使用 Wi Fi 几天后停止工作
- python-3.x - 如何制作杂货收据程序
- java - 这种颜色编码叫什么名字?§e§l
- html - 转换为链接时 HTML 文本消失
- json - 在 Visual Studio 代码中显示已安装主题的列表
- time-complexity - 摊销时间复杂度
- python - 基本的猜谜游戏没有按我想要的方式运行
- css - 在 scss 中为“url('assets/image.png)”编译错误