Una funzione dovrebbe selezionare le righe in una tabella in base al nome della riga (colonna 2 in questo caso). Dovrebbe essere in grado di prendere un solo nome o un elenco di nomi come argomenti e gestirli correttamente.Gestire una lista o un singolo numero come argomento
Questo è quello che ho adesso, ma idealmente non ci sarebbe questo codice duplicato e qualcosa come eccezioni sarebbero stati utilizzati in modo intelligente per scegliere il modo giusto per gestire l'argomento di input:
def select_rows(to_select):
# For a list
for row in range(0, table.numRows()):
if _table.item(row, 1).text() in to_select:
table.selectRow(row)
# For a single integer
for row in range(0, table.numRows()):
if _table.item(row, 1).text() == to_select:
table.selectRow(row)
+1 ... molto più facile mantenere solo un set di codice per eseguire un compito e più pythonic; lascia che esploda se qualcuno lo chiama in barba ai documenti. Se è veramente necessaria una funzione che accetta un singolo intero come argomento, creane una seconda chiamata "def select_row (to_select)" e assegnagli il pacchetto "to_select" come elenco, quindi chiama select_rows. –