Windows 7でPython 3.2を使用しています。Pythonシェルを開いたときに、現在のディレクトリを確認するにはどうすればよいですか。また、モジュールがある別のディレクトリに変更するにはどうすればよいですか。
Windows 7でPython 3.2を使用しています。Pythonシェルを開いたときに、現在のディレクトリを確認するにはどうすればよいですか。また、モジュールがある別のディレクトリに変更するにはどうすればよいですか。
回答:
os
モジュールを使用できます。
>>> import os
>>> os.getcwd()
'/home/user'
>>> os.chdir("/tmp/")
>>> os.getcwd()
'/tmp'
しかし、それが他のモジュールを見つけることに関するものである場合:PYTHONPATH
Linux という環境変数は、
export PYTHONPATH=/path/to/my/library:$PYTHONPATH
次に、インタプリタはこの場所でもimport
edモジュールを検索します。名前はWindowsでも同じだと思いますが、変更方法がわかりません。
編集する
Windowsの場合:
set PYTHONPATH=%PYTHONPATH%;C:\My_python_lib
(http://docs.python.org/using/windows.htmlから取得)
編集2
...さらに良い:virtualenv
andを使用するとvirtualenv_wrapper
、add2virtualenv
インストール環境や「通常の」作業環境を汚染することなく、モジュールパスを好きなように追加できる()開発環境を作成できます。
http://virtualenvwrapper.readthedocs.org/en/latest/command_ref.html
PYTHONPATH
が、OPはWindowsを指定していることに注意してください
sys.path
スクリプト内に追加するオプションもあります。
あなたが欲しい
import os
os.getcwd()
os.chdir('..')
os.chdir('C:/Users/Ajeya/Documents')
またはのいずれos.chdir('C:\\Users\\Ajeya\\Documents')
かos.chdir(r'C:\Users\Ajeya\Documents')
です。
os.getcwd()
変更する前に作業ディレクトリを確認できるように、デバッグ目的でのみ呼び出すことに注意してください。実際にこれを変更するコードcwd
は次のos.chdir('..')
>>> import os
>>> os.system('cd c:\mydir')
実際、os.system()
Windowsのコマンドプロンプトで実行できるすべてのコマンドを実行できます。dirを変更するだけではありません。
現在のディレクトリの変更は、Pythonでのモジュールの検索に対処する方法ではありません。
むしろ、Pythonがインポートするモジュールを見つける方法については、モジュール検索パスのドキュメントを参照してください。
標準モジュールセクションからの関連ビットは次のとおりです。
変数sys.pathは、インタープリターのモジュールの検索パスを決定するストリングのリストです。これは、環境変数PYTHONPATH、またはPYTHONPATHが設定されていない場合は組み込みのデフォルトから取得されたデフォルトパスに初期化されます。標準のリスト操作を使用して変更できます。
>>> import sys
>>> sys.path.append('/ufs/guido/lib/python')
現在のディレクトリの取得と設定に関する元の質問に答えてください。
>>> help(os.getcwd)
getcwd(...)
getcwd() -> path
Return a string representing the current working directory.
>>> help(os.chdir)
chdir(...)
chdir(path)
Change the current working directory to the specified path.
import sys sys.path.append('/home/g/PycharmProjects/your_project/')
Pythonで現在の作業ディレクトリを変更する最も簡単な方法は、「os」パッケージを使用することです。以下は、Windowsコンピューターの例です。
# Import the os package
import os
# Confirm the current working directory
os.getcwd()
# Use '\\' while changing the directory
os.chdir("C:\\user\\foldername")