2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

python macで仮想環境を構築 virtualenv

Last updated at Posted at 2018-08-03

##作業環境

  • MacBook Air (11-inch, Mid 2012)
  • Python 3.6.4

##参考元
https://www.udemy.com/the-python-mega-course/learn/v4/overview

##まずは仮想環境を作る
Flaskでweb作るための作業フォルダを作るために、仮想環境を作る。mac用。linuxもおなじ。

  1. なんでもいいからフォルダを作る。フォルダ名はアプリケーション名でもプロジェクト名でもなんでもいい。
  2. 1で作ったフォルダの中にstaticフォルダ。templatesフォルダを作る。templatesのs忘れずに。
  3. virtualフォルダを作る。仮想環境上でpythonpipコマンドなどを使えるようにする。1で作ったフォルダの中のディレクトリに移動してから、terminalで下記のコマンドを実行
1の中のディレクトリで
pip install virutalenv
python -m virtualenv virtual

app_folder
|
|---static
|
|---templates
|
|---virtual 
|
|---backend.py (pyファイル)
こんな感じの構成になってればおk。

  • バックエンド用の.pyファイルの位置も同じさっき作ったフォルダ群と同じディレクトリーに入れる。
  • staticフォルダにはcssファイルが入る
  • templatesフォルダにはhtmlファイルが入る
  • virtualフォルダにはpythonのモジュールが保存される。モジュールを入れるには2つの方法がある。下記参照
  • 特定のフォルダ内部でterminalを起動するには、いちいちcd フォルダへのpathをしなくても フォルダを右クリックしてterminalを起動する方法 すれば簡単に開ける。ないとめんどい。
virutalフォルダと同階層でterminalを起動
#1
virtual/bin/pip install module_name
#2
. virtual/bin/activate
pip install module_name

#おまけ:window
virtual/Script/pip install module_name
  • 1か2のどちらかの方法でもいい。個人的にはactivateで仮想環境に入るほうが好き。pythonpipコマンドの実行とかしやすいから。
  • 2の方法は、仮想環境をactivateで起動。仮想環境上で
    pythonpipコマンドは正常に機能する。戦闘に". "をつけないと"permission denied"って言われる場合がある。
  • windowでモジュールを追加するとき、pip installでエラーが出る時がある。プレコンパイルされたpythonのモジュールがDLできるサイトここからファイルを拾ってきて、プロジェクトフォルダの中に入れればpip install module_nameでインストールできるようになる。

webページの開発とかするときに、仮想環境は作るべきとのこと。

##あとがき
次はHerokuにアップロードする手順。
まとめるのわかりにくいから分ける。

2
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?