2010-09-27 13 views

Odpowiedz

49

W języku Python _ jest często używany jako ignorowany symbol zastępczy.

(path, _) = self._treeView.get_cursor() 

Można również uniknąć rozpakowywania, ponieważ krotka jest indeksowalna.

def get_selected_index(self): 
    return self._treeView.get_cursor()[0][0] 
+17

Warto zauważyć, że '_' nie jest jakiś rodzaj magii składniowej, ale konwencja (oczywiście, jest to konwencja rozpoznawane przez IDE i pylint i konwencje Pythona są dość silny ...) – detly

+1

Python będzie być niczym bez konwencji! – fredley

+2

Czy udokumentowano tę konwencję? – Nathan

4

Jeśli nie dbają o drugą pozycję, dlaczego nie tylko wyodrębnić pierwszy:

def get_selected_index(self): 
    path = self._treeView.get_cursor()[0] 
    return path[0] 
+0

Należy zwrócić uwagę, że powrót powinien być teraz 'ścieżką powrotu', a nie' ścieżką powrotu [0] ' –

+3

Jest to słabsze, ponieważ usuwa twierdzenie, że istnieją dokładnie dwa elementy. –

+0

@Michael Mior: Wycofałem twoją edycję: Na podstawie pierwotnego pytania powinna ona nadal być 'path [0]' ('path' wydaje się być samą sekwencją) – Steven

0

wygląda całkiem, ja nie wiem, czy to dobry występ.

a = (1, 2, 3, 4, 5) 
x, y = a[0:2] 
Powiązane problemy