web-dev-qa-db-ja.com

Visual Studio Codeの現在のファイルのディレクトリでpython interactiveを実行するには?

VSCodeで"Run Selection/Line in Python Terminal"コマンドを実行する場合、ターミナルの現在の作業ディレクトリはワークスペースのルートディレクトリです。選択/行を実行するときに、ターミナルの現在のディレクトリをcurrent fileのディレクトリに設定するにはどうすればよいですか?

15
ozgur

「ユーザー設定」で、検索バーを使用して「python.terminal.executeInFileDir」を探し、その値を「false」ではなく「true」に設定(=)します。

2
CygnusX

Python Interactive Windowの場合、探している設定はpython.dataScience.notebookFileRoot。ただし、同様の質問に対する this answer で説明されているように、

常にファイルの場所で開く(notebookFileRootをフォルダーごとの絶対パスに設定する必要なし)は、notebookFileRoot設定ではサポートされていません。 $ {fileDirname}などのVSCode変数は、タスクおよびデバッグ構成ファイル(launch.jsonおよびtask.json)に固有です。

関連する github issue も参照してください。

前述のように、この設定を特定の絶対パスに設定することもできます。これは、主に一度に1つのプロジェクトで作業している場合に十分な場合があります。

または、スクリプト/ノートブックの先頭に次のコードを追加することもできます。

import os
os.chdir('absolute-path-to-workingDir')
1
onietosi

file/preferences/user settingsに移動して、ウィンドウの右上にある[{}]アイコンをクリックする必要があります。その後、この設定を"terminal.integrated.cwd": "C:\\Users\\myUser\\",に配置し、その後、端末のディレクトリがどこにでもあります。この答えは、vscodeを使用することにまだ慣れていないため、最も不正確な原因ではありません。

1
Nineveh Mizuko

このオプションは役立ちます。 「ファイル」->「設定」->「設定」。以下の設定を追加または編集します。

terminal.integrated.Shell.windows": ""

次の端末から反映されます。

.profileをデフォルトのシェルに追加し、デフォルトのパスを追加します。

詳細情報: https://code.visualstudio.com/docs/editor/integrated-terminal

0
Deepam Patel

これを達成する簡単な方法はまだありません。より良い解決策を探して、VScode Marketplaceの Terminal Here 拡張機能を使用して回避策を講じています。この拡張により、現在のファイルのディレクトリで統合端末を開くことができます。この拡張機能をさらにいくつかの手順と組み合わせることで、目的の動作を得ることができます。

  • 拡張機能をインストールしたら、ファイルウィンドウにフォーカスがあることを確認し、ctrl+shift+pを押してTerminal Here: Create Terminalを実行します。これにより、ファイルのディレクトリに新しいターミナルが作成されます。
  • ターミナルでpythonと入力して、Pythonインタープリターを起動します。
  • 次に、実行する行にカーソルを置き、ctrl+shift+pを押してTerminal: Run selected text in active terminalを実行します。これは、オープンpythonインタープリターでコードのその行を実行します。

最初の2つのステップは、現在のファイルのディレクトリにあるPythonインタープリターでコード選択を初めて実行する場合にのみ必要です。その後の選択はすべて3番目のステップで実行できます。 、カスタム keybindings を最初と最後のステップに添付できます。

0
amanb