私のIDEが列が未使用の変数であると文句を言わないように次の関数を書く方法はありますか?
def get_selected_index(self):
(path, column) = self._tree_view.get_cursor()
return path[0]
この場合、タプルの2番目のアイテムは気にせず、解凍時にそのアイテムへの参照を破棄したいだけです。
私のIDEが列が未使用の変数であると文句を言わないように次の関数を書く方法はありますか?
def get_selected_index(self):
(path, column) = self._tree_view.get_cursor()
return path[0]
この場合、タプルの2番目のアイテムは気にせず、解凍時にそのアイテムへの参照を破棄したいだけです。
Pythonでは、_
は無視されるプレースホルダーとしてよく使用されます。
(path, _) = self._treeView.get_cursor()
タプルはインデックス付け可能であるため、解凍を回避することもできます。
def get_selected_index(self):
return self._treeView.get_cursor()[0][0]
2番目の項目を気にしない場合は、最初の項目を抽出してみませんか。
def get_selected_index(self):
path = self._treeView.get_cursor()[0]
return path[0]
はい、可能です。慣例で受け入れられた答えは_
、プレースホルダー変数に対してのみ展開されます。
あなたはこれを介して回避することができますitertools.islice
:
from itertools import islice
values = (i for i in range(2))
res = next(islice(values, 1, None)) # 1
これによりres
、以下と同じようになります。
_, res = values
上で示したように、このソリューションは、またはvalues
などのインデックス可能なコレクションではない反復可能である場合に機能します。list
tuple
きれいに見えますが、良いパフォーマンスかどうかはわかりません。
a = (1, 2, 3, 4, 5)
x, y = a[0:2]