Pycharmの便利機能まとめ
ショートカット
一般
コマンド | 内容 |
---|---|
Shift + ⌘ + Delete | 最後に更新した場所にジャンプ |
Shift + ⌘ + F7 | 現在開いているファイル内で、カーソルが当てられている変数が使用されている場所をハイライト。その状態で ⌘ + G を押すとつぎに使われている場所にジャンプできる。 |
⌘ + ↑ | ナビゲーションバーにカーソルが移動する。同じフォルダの他のファイルを開きたいときに, 左のディレクトリGUIをマウス操作しなくて済む。⌘+ ↓ でソースにカーソルを戻せる。 |
⌘ + K | コミットの変更と差分をGUIで見れる。 |
関数, クラスの情報
この関数の定義どうなってるのか, 変数何使えばいいのか, とかのときに使えるコマンド
コマンド | 内容 |
---|---|
⌘ + P | パラメータ情報の取得 |
⌘ + B | 関数が定義されているファイルを開く |
F1 | クイックドキュメントを開く |
Code
コマンド | 内容 |
---|---|
Option + ⌘ + T | その部分を制御構文で囲う。ある処理を try/except でエラーキャッチしたいときに便利。(他にも while とか try/finally とかもある。) |
Refactor
コマンド | 内容 |
---|---|
Control + O | 継承クラスでの関数のオーバーライドをGUI上で選択できる。 |
Shift + F6 | 変数名の変更。その変数が使われているファイルを自動で検索してすべて置換できるのでとても便利🍺 |
補間
コマンド | 内容 |
---|---|
Control + O | 変数名の補間。 |
便利機能
編集履歴
git とは別に Pycharm 自体が編集履歴を保存している。 VCS -> Local History -> Show History を開くと過去の編集ログを一括でみることができる.
git には残らない細かい粒度でのログを見たいときや, 前の状態に戻したいけど commit してない... みたいな事故が起こったときに使える 。(本当はそういうことが起こってはだめですが)
.gitignore の自動生成
⌘+N
で新規ファイル作成をする際, 下の方にある .ignore
を選択し git
を選ぶと gitignore
ファイルの生成を行える。
用いている言語によってそれぞれ ignore が設定されているので、必要な物を検索してチェックボックスにチェックを入れるとよしなな ignore が完成する。
Terminal
Option + F12
でプロジェクトフォルダに
pycharm での docstring の書き方
参考: https://www.jetbrains.com/help/pycharm/2017.1/type-hinting-in-pycharm.html
基本的に python において docstring の書き方は一通りではないが、 pycharm が推奨する docstring の形式があり, それに準拠すると型チェックを自動でおこなってくれる.
シンタックス | 意味 |
---|---|
Foo |
Class Foo visible in the current scope |
x.y.Bar |
Class Bar from x.y module |
Foo | Bar |
Foo or Bar |
(Foo, Bar) |
Tuple of Foo and Bar |
list[Foo] |
List of Foo elements |
dict[Foo, Bar] |
Dict from Foo to Bar |
T |
Generic type (T-Z are reserved for generics) |
T <= Foo |
Generic type with upper bound Foo |
Foo[T] |
Foo parametrized with T |
(Foo, Bar) -> Baz |
Function of Foo and Bar that returns Baz |
list[dict[str, datetime]] |
List of dicts from str to datetime (nested arguments) |
例
def put_image_to_s3(image, bucket_name, directory="image", extension="JPEG" logdir=None): """ PIL形式の画像を s3 に upload する :param Image.Image image: PIL image file :param str bucket_name: upload先のバケット名 :param str directory: バケットでのディレクトリ :param str extension: ファイルの拡張子. 今は `JPEG` のみ対応 :param str | None logdir: アップロード中のログを出力するディレクトリへのパス. `None` のときログを出力しない. :return: url to uploaded image file :rtype str """ # 以下実装 ~~