【问题标题】:What's the working directory when using IDLE?使用 IDLE 时的工作目录是什么?
【发布时间】:2013-04-04 20:30:55
【问题描述】:

所以,我正在学习 Python,并想创建一个简单的脚本来从 Internet 下载文件,然后将其写入文件。但是,我使用的是 IDLE,不知道 IDLE 中的工作目录是什么或如何更改它。如果我不知道工作目录或如何更改它,如何在 IDLE 中处理文件系统?

【问题讨论】:

    标签: python python-idle


    【解决方案1】:

    您可以使用os.getcwd 轻松检查自己:

    >>> import os
    >>> os.getcwd()
    'C:\\Program Files\\Python33'
    

    那是在我的Windows机器上,所以它可能是Python本身的安装目录。

    您可以在运行时使用os.chdir 更改该目录:

    >>> os.chdir('C:\\Users\\poke\\Desktop\\')
    >>> os.getcwd()
    'C:\\Users\\poke\\Desktop'
    >>> with open('someFile.txt', 'w+') as f:
            f.write('This should be at C:\\Users\\poke\\Desktop\\someFile.txt now.')
    

    这将——毫不奇怪——在我的桌面上创建文件。

    【讨论】:

    • 我想如果我改变目录,重新启动IDLE后它再次不变。是吗?不过很有用
    • @RamisaAnjumAditi 是的,对当前工作目录的更改只是暂时的。
    【解决方案2】:

    您可以使用os.getcwd() 进行检查:

    In [1]: import os
    
    In [2]: os.getcwd()
    Out[2]: '/home/monty'
    
    In [7]: os.chdir("codechef")    #change current working directory
    
    In [8]: os.getcwd()
    Out[8]: '/home/monty/codechef'
    

    os.chdir()

    In [4]: os.chdir?
    Type:       builtin_function_or_method
    String Form:<built-in function chdir>
    Docstring:
    chdir(path)
    

    os.getcwd()

    Change the current working directory to the specified path.
    
    In [5]: os.getcwd?
    Type:       builtin_function_or_method
    String Form:<built-in function getcwd>
    Docstring:
    getcwd() -> path
    
    Return a string representing the current working directory.
    

    【讨论】:

    • @Nathan2055 为此使用os.chdir()
    【解决方案3】:

    这取决于操作系统以及 IDLE 的执行方式。

    要更改 Windows 中的(默认)CWD,请右键单击快捷图标,转到“属性”并更改“开始于”。

    【讨论】:

    • 您不能从任何工具栏选项中更改默认 cwd 吗?我找了找。
    【解决方案4】:

    这是usfca.edu的摘录

    如果您希望能够在 IDLE 中轻松导入文件,则需要确保 IDLE 的工作目录设置为包含所有代码的文件夹。例如,我的课堂代码位于目录/Users/sjengle/Desktop/Code,所以要更改IDLE的工作目录我需要运行以下两个命令:

    import os
    os.chdir("/Users/sjengle/Desktop/Code")
    

    【讨论】:

      【解决方案5】:

      我知道的老问题,但也许 OP 的问题没有得到回答?如果您希望 Idle 的 File Open/Save/Save As 菜单项与特定文件夹交互,您需要在启动 Idle 之前设置 CWDbefore。因此,假设您在 Windows 上有一个文件夹“C:\Users\Documents\python\my_project”,然后在 cmd 提示符下键入 cd C:\Users\&lt;username&gt;\Documents\python\my_project,然后启动 Idle

      【讨论】:

        猜你喜欢
        • 2019-04-20
        • 1970-01-01
        • 1970-01-01
        • 2018-01-17
        • 2020-05-22
        • 1970-01-01
        • 2017-10-28
        相关资源
        最近更新 更多