PyCharmとDockerの開発環境でのコードフォーマット
PyCharmとDockerの開発環境でのコードフォーマット 14インチのMacBook Proを新調してから開発環境をPyCharmとDockerで統一することにしました。Dockerはコンテナ単位で環境構築ができるの […]
Filter by Category
PyCharmとDockerの開発環境でのコードフォーマット 14インチのMacBook Proを新調してから開発環境をPyCharmとDockerで統一することにしました。Dockerはコンテナ単位で環境構築ができるの […]
ツイートを位置情報でプロットして時系列に纏めるtapiokaHeatmapの解説 今回はタピオカのツイート数を位置情報でプロットして時系列に纏めるソースコードについて解説する。 ソースコードは下記のgithubにあるので […]
pipenv shellをしてもactivateできない pipenvで作った仮想環境に出たり入ったりを繰り返していると、pipenv shellをしても以下のようにShell for UNKNOWN_VIRTUAL_E […]
WARNING: `pyenv init -` no longer sets PATH. pyenvが入っているzsh環境(Mac)でターミナルの起動時に以下のエラーが出るようになりました。今回はDjangoのプロジェク […]
40分でUbuntu Nginx PostgreSQL Django Gunicornの環境構築 VPSへのログイン(新規タブ) OSの初期設定(アップデート、アップグレード) 新規ユーザーを追加 新しく追加したユーザー […]
OpenCVで複数の動画を連結する 複数の動画素材を結合したり、GoProで長時間撮影した時に約4GB毎に分割される動画ファイルを結合して一つの動画を書き出す方法です。 コードはGitHubリポジトリにあげています。 開 […]
Pythonでファイルをアップロードする 画像をPOSTして結果を返すプログラムやファイルをアップロードして機械学習の推論を試す時に、ブラウザからFormを使ってアップロードすることもできますが、Pythonでファイルの […]
前回の内容が古くなってしまったので2021年版に更新します。 Dockerを使ってシンプルなDjangoとPostgreSQLの開発環境を構築する方法の2021年版です。以下の点が前回より変わった点です。・Volumeを […]
Pythonのrandomモジュールでランダムな小数・整数を生成 Pythonで乱数(ランダムな小数や整数)が生成できる、randomモジュールの使い方を説明します。 開発環境 float型の乱数を生成(1) float […]
Pythonのdatetimeで日付、時間の計算(2) 前回からの続きです。 今回は、曜日を取得したり、特定の曜日の日付を取得します。後半は文字列とdatetimeの変換について説明します。 開発環境 本日の曜日を取得 […]
Pythonのdatetimeで日付、時間の計算(1) Pythonには日付や日時を扱うdatetimeモジュールがありますが、日付の取得・計算にはtimedeltaを使います。 開発環境 現在の日付、時刻を取得 日付の […]
Pythonのdatetimeで日付や時刻を扱う Pythonには日付や日時を扱うdatetimeモジュールがあります。今回はこのdatetimeモジュールを解説します。 開発環境 現在の日付を取得 現在の時刻を取得 現 […]
psycopg2がインストールできずエラーになる DjangoでPostgreSQLに接続するために、以下のコマンドでpsycopg2をインストールしたところ、以下のエラーが発生した時の対処法です。 エラー 実際には…の […]
多次元配列から最大値、最小値を取得 Pythonで複数の配列からなる多次元配列から最大値、最小値を取得する方法です。一次元配列も同じやり方で最大値、最小値を取得可能です。 モジュールのインストール ソースコード arr1 […]
Pythonで文字列をリスト化して一文字づつ処理 Pythonで文字列をリスト化して一文字づつ処理する方法です。サンプルでは一文字づつ文字をshift-jisに変換して、変換できない文字を表示します。 開発環境 ソースコ […]
PillowでPNGファイルを変換するときの背景処理 PillowでPNGファイルをJPGに変換するときに、背景が透過のファイルを変換すると透過部分が黒くなったり、不自然な途切れ方をしたりといった時の対処方法です。 開発 […]
名前に現在時刻を入れたファイルが連番かどうか判定(後半) 前回からの続きです。 前回は連番になっていたらまとめてリスト化しましたが、今回はまとめたファイルを動画に変換して書き出します。 コードはGitHubリポジトリにあ […]
名前に現在時刻を入れたファイルが連番かどうか判定(前半) なにかアクションがあった際に生成されるファイル名に現在時刻が入ったファイルが、連番になっているかどうかを判別して連番になっていたらまとめてリスト化する方法です。手 […]
Beautiful Soupでbrタグを改行コードに変換する Beautiful Soupでスクレイピングしたdivタグ内にbrタグがあった際に改行コードに変換する方法です。以下のコードはbrタグが複数ある場合にも対応し […]
フォルダ内のファイルを複数毎にzip形式に圧縮 ファイルをまとめてzip形式に圧縮してしまうと容量が増えてしまうので、メールなどで送るために複数個に分けて圧縮ファイルを作りたいときがあります。ファイル数がそれほど多くない […]
14インチのMacBook Proを新調してから開発環境をPyCharmとDockerで統一することにしました。Dockerはコンテナ単位で環境構築ができるので、ローカル環境を汚さずクリーンな状態に保てるのが良いですね。ただ開発環境をDockerに絞ったことで問題が発生しました。それはBlackやFlake8などのコードフォーマッターが使えないということ。
従来はvenvやpipenvなどの仮想環境にpipでBlackやFlake8をインストールして、File WatcherというPyCharmのプラグインでファイルを更新する度に自動でフォーマットする設定にしていましたが、Docker環境だとこのプラグインが動かずエラーになってしまいます。
BlackとFlake8のための仮想環境をvenvなどで作って適用させることもできますが、今回は開発環境をDockerに統一させるため、PyCharmに標準で備わっているコードの整形機能を使います。使い方は簡単で以下のショートカットキーを押すだけです。
⌥ ⌘ L
上記のショートカットは手動ですが、自動で整形させるためには⌘,
で設定を開いてTools / Actions on SaveのReformat codeにチェックを入れて適用するとファイルの更新の度にコードが自動成形されます。
記号 | 修飾キー |
---|---|
⌘ | command |
⌥ | option |
⇧ | shift |
⌃ | control |
API Beautiful Soup black Channels charset ChromeDriver CodeCommit datetime Django REST framework Docker enumerate f-string gettext git GitHub glob Google Colaboratory i18n Internship Jupyter Matplotlib Nginx OpenCV pandas PIL Pillow PostgreSQL psycopg2 PyCharm PyCon pyenv PyTorch Redis Rembg ReportLab requests S3 Selenium Sentry slack tqdm uWSGI venv Vue.js youtube
群馬県でPythonを使ったAIやソフトウェアを開発している株式会社ファントムが運営しています。
メーリングリストに登録するとファントムの最新情報をお届けします
お客様のメールアドレスを共有することはありません
Comments