vscodeにてDjangoを実行させる際に、インタープリターを選択する理由が分かりません。
インタープリターを選択せずとも、ターミナルから、「python manage.py runserver」とすれば、実行が可能です。
何故、インタープリターを選択する必要があるのでしょうか?
どなたか、お詳しい方がいらっしゃいましたら教えていただけましたら幸いです。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答3件
0
Pythonで書いたプログラムを実行させるのに必要だからです。
もしかして、自分で書いたプログラム(例えば、hoge.py
としましょう)を実行する際、コンピュータがそのまま実行してると考えていますか?インタープリター型のプログラム言語(Pythonはそうです)はユーザーが書いたプログラムを実行する場合は、必ずインタープリターが必要となります。インタープリターがプログラムを読み、それを逐一コンピュータが実行できる形に翻訳してくれるからです。vscode自体はプログラムファイルとインタープリターの組み合わせを自動的に解決することはありません。そのために、選択する必要があります。
それと、
インタープリターを選択せずとも、ターミナルから、「python manage.py runserver」とすれば、実行が可能です。
と書いていますが、知らず知らずの内にインタープリターを指定していますよ。
(まあ、当然、指定しているから動くんですけど)
投稿2020/01/11 04:36
総合スコア1557
0
通常python
というコマンドがインタプリタの実行ファイルになります。
コマンドとして実行した場合、環境上で普通にPATH探索されて実行ファイルが選ばれるので、複数のPythonがインストールされている環境で望みのPythonを選べる保証はありません。
投稿2020/01/11 04:34
総合スコア30933
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
- IDEがインタプリタの場所を知っている必要がある
- 開発手法として、呼び出されるインタプリタが指定できたほうが便利である。
ことから、インタプリタを指定するようになっています
VSCodeや他のIDEには、作成中のプログラムをデバッグする機能が付いています。pデバッグするためにはインタプリタを呼び出す必要があり、インタプリタがどこにあるのかVSCodeやIDEが知っている必要があるということになります。
開発環境の実行中のパスにpython
とうコマンドがあればそれを自動的ん使うということにしてしまえば、手間が省けると思われるかもしれませんが、通常の開発では、開発環境と本番環境が異なっていたり、複数のバージョンに対応しているかどうか確認する必要があるなど、インタプリタが固定されてしまうと困ることになります。
また、venvなどの仮想環境を使うことで、インタプリタだけでなく、インストールされているモジュールも差し替えたりするなどもできるようになります。
ということで、開発環境としては、インタプリタ(仮想環境)が指定できたほうが利便性が高いからということです。
投稿2020/01/11 14:22
総合スコア12666
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/01/12 00:10
2020/01/12 13:38
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/01/11 04:54
2020/01/11 05:04
2020/01/11 07:24 編集
2020/01/11 13:42