Pycharm 2018.1 でgetter/setterを自動生成できず困っています。
使用しているパソコンはmacOS 10.13.5です。
少し古いですが下記のページや、ドキュメントにはgetter setterが作れると書いているのですが、その選択肢が表示されません。
【メモ】WebStormでGetter/Setterを自動作成するコマンド
Command+Nも試しましたがクラスネームの検索画面が表示されるだけでした。
誰かご存知の方がいらっしゃいましたらご回答よろしくお願い致します。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

回答2件
0
メソッドとしてのgetter/setterは、Pythonでのpropertyのような言語要素を持たないプログラミング言語で「仕方がないから代わりに使われる」という類の(言葉は悪いですが)劣化版的な手法だと思います。
Pythonではpropertyを使うので、live templateが用意されています。
クラス定義の中でprop
と打ってみてください。
live templateからprop
props
propsd
がサジェストされると思います。
順番にgetterのみ、getterとsetter、getterとsetterとdeleterのテンプレートになっています。
どれかを選んでEnter
か、キー入力してcmd
+j
(insert live template)を押すとコード展開されます。
property名の部分が一括入力可能なplacaeholderになっているのでキーで入力してください。
投稿2018/06/19 23:46
編集2018/06/22 01:52総合スコア11299
0
ベストアンサー
JetBrain社は複数のIDEをリリースしてますが、PyCharmはPython用、WebStormはPHP用、IDEAは(主として)Java用です。
どのIDEにも通用する似た部分も多いと思いますが(言語仕様が違うため)違っている部分もあると思います。PyCharmには「Codeメニュー」からプロパティーを自動生成するような機能はないようです。
その代わりLive Template機能が使えます。下記の例のようにクラス構文の内側で
(1) props
まはたpropsd
とキーインしENTERキーを押下
(2) プロパティー名が未定状態でのデコレーターやgetter/setterなどが自動展開される
(3) そのまま続けてプロパティー名をキーインしENTERを押下する
という操作で最小限の手間でプロパティーのコードを展開してくれます。
Python
1class Foo: 2 def __init__(self): 3 pass 4 5 props # <==この辺りでLive Template `props`を用いる
===> 上記手順で以下のように特定の名前のプロパティーのgetter/setterが展開される
Python
1class Foo: 2 def __init__(self): 3 pass 4 5 @property 6 def abc(self): 7 return 8 9 @abc.setter 10 def abc(self, value): 11 pass
こういう情報を見つけるにはグーグルなどで
「pycharm how to generate getter/setter」
のような検索をすると見つかります。自分が知りたいソフトウェアの名前(本件ならIDEの名前であるpycharm
)を含めるのがポイントだと思います。
投稿2018/06/19 23:43
総合スコア18404
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。

あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/06/22 01:36
2018/06/22 02:08