如何在python中移回一个文件夹

时间:2012-09-05 11:10:37

标签: python operating-system

实际上需要走一些路径并执行一些命令,下面是代码

import os
present_working_directory = '/home/Desktop/folder' 

目前我在folder

if some_condition == true :
    change_path = "nodes/hellofolder"
    os.chdir(change_path)
    print os.getcwd()
if another_condition  == true:
    change_another_path = "nodes" 
    os.chdir(change_another_path) 
    print os.getcwd()

**Result**:
'/home/Desktop/folder/nodes/hellofolder'
python: [Errno 1] No such file or directory

实际上这里发生的事情是我第一次使用os.chdir()时目录已更改为

'/home/Desktop/folder/nodes/hellofolder'

但是对于第二个我需要通过移动到一个

的文件夹来运行文件
'/home/Desktop/folder/nodes'

所以任何人都可以让我如何在python中移动一个文件夹

7 个答案:

答案 0 :(得分:33)

就像你在shell中一样。

os.chdir("../nodes")

答案 1 :(得分:19)

这是一种非常独立于平台的方法。

In [1]: os.getcwd()
Out[1]: '/Users/user/Dropbox/temp'

In [2]: os.path.normpath(os.getcwd() + os.sep + os.pardir)
Out[2]: '/Users/user/Dropbox/'

然后你就拥有了这条道路,你可以用它来做任何事情。

答案 2 :(得分:16)

致电

os.chdir('..')

与任何其他语言相同:)

答案 3 :(得分:1)

考虑使用绝对路径

import os
pwd = '/home/Desktop/folder'

if some_condition == true :
    path = os.path.join(pwd, "nodes/hellofolder")
    os.chdir(path)
    print os.getcwd()
if another_condition  == true:
    path = os.path.join(pwd, "nodes")
    os.chdir(path) 
    print os.getcwd()

答案 4 :(得分:0)

通常

Folder1:
    sub-folder1:(you want to navigate here)
Folder2:
    sub-folde2:(you are here)

要从sub-folder1导航到sub-folder2,您需要这样写 “ ../sub-folder1/

答案 5 :(得分:0)

此命令已解决我的问题 使用后的前import osos.path.normpath(os.path.abspath(__file__) + os.sep + os.pardir)

答案 6 :(得分:0)

上述答案是正确的。以下更多 通常,当您的Python脚本位于嵌套目录中,并且您想从当前工作目录上移一个级别,比如说加载文件时,就会发生这种情况。

这个想法是简单地重新格式化路径字符串,并以'../'作为前缀。这样的例子就是这样。

'../current_directory/' + filename

此格式类似于在终端中使用的格式。如有疑问,请启动终端并尝试一些命令。格式反映在编程语言中。