如何在Python shell中了解/更改当前目录?
通过 OS Python模块,我们可以以一种便携的方式与操作系统进行交互。这个模块是Python默认库的一部分,其中包含用于定位和修改工作目录的工具。
本文将介绍以下内容:
- 如何获取当前工作目录:os.getcwd()
- 更改当前工作目录:os.chdir()
file函数会返回当前脚本文件(.py)的路径。
获取当前工作目录- os.getcwd()
函数os.getcwd()
以字符串形式返回Python当前工作目录的绝对路径。”获取当前工作目录”(getcwd)是指使用print()
和getcwd()
来打印操作系统中的当前工作目录。
返回的字符串中省略了尾部的斜杠字符。
示例
以下是一个获取当前工作目录的示例:
# Importing the module
import os
# Getting the current working directory
cwd = os.getcwd()
# Printing the current working directory
print("Th Current working directory is: {0}".format(cwd))
# Printing the type of the returned object
print("os.getcwd() returns an object of type: {0}".format(type(cwd)))
输出结果
以下是上述代码的输出:
The Current working directory is: C:\Users\Lenovo\Desktopos.getcwd() returns an object of type: class 'str'>
os.getcwd() returns an object of type:
改变当前工作目录:os.chdir()
使用Python中的chdir()函数来改变当前工作目录。
你希望改变的目录路径是该方法允许的唯一参数。你可以使用绝对路径或相对路径参数。
示例
以下是一个改变当前工作目录的示例:
# Importing the module
import os
# Printing the current working directory
print("The Current working directory is: {0}".format(os.getcwd()))
# Changing the current working directory
os.chdir('C:\Users\Lenovo\Downloads\Works')
# Print the current working directory
print("The Current working directory now is: {0}".format(os.getcwd()))
输出
以下是上面代码的输出:
The Current working directory is: C:\Users\Lenovo\Desktop
The Current working directory now is: C:\Users\Lenovo\Downloads\Works
注意 − 如果在chdir()方法的参数中未提供目录,则会引发NotADirectoryError异常。如果找不到所提供的目录,则会引发FileNotFoundError异常。如果运行脚本的用户没有所需的权限,则会引发PermissionError异常。
示例
# Import the os module
import os
path = 'C:\Users\Lenovo\Downloads\Works'
try:
os.chdir(path)
print("The Current working directory is: {0}".format(os.getcwd()))
except FileNotFoundError:
print("Directory: {0} does not exist".format(path))
except NotADirectoryError:
print("{0} is not a directory".format(path))
except PermissionError:
print("No permissions to change to {0}".format(path))
输出
以下是上述示例的输出:
The Current working directory is: C:\Users\Lenovo\Downloads\Works