Temat: Python | wyświetlanie etykiet
Pytanie od kolegi bez profilu Goldenline: :)Mam problem z odpowiednim wyświetleniem etykiet z tabeli atrybutów w niestandardowy sposób.
W poszczególnych kolumnach w tabeli atrybutów brak danych zapisany jest jako „0”, natomiast wartości rzeczywiste jako 1 (kolumna 'tabel1'), 2 (kolumna 'tabel2') oraz 3 (kolumna 'tabel3').
Po wpisaniu poniższej komendy etykieta wyświetli się jako „12 0”, „1 0 3”, „0 0 3” itd.
def FindLabel ( [Tabel1], [Tabel2], [Tabel3] ):
return [Tabel1] + " " + [Tabel2] + " " + [Tabel3]
(Nazwy kolumn są przykładowe)
Jednak chciałbym aby nie wyświetlane były zera, czyli etykiety wyglądałyby odpowiednio: „A12”, „1 3”, „2”.
Znalazłem poniższy sposób:
def FindLabel ([Tabel1], [Tabel2], [Tabel3] ):
if [Tabel1] == "1" and [Tabel2] == "0" and [Tabel3] == "0":
return [Tabel1]
elif [Tabel1] == "2" and [Tabel2] == "0" and [Tabel3] == "C":
return [Tabel1] + " " + [Tabel3]
else:
return [Tabel1] + " " + [Tabel2] + " " + [Tabel3]
Problem w tym, że w rzeczywistości kolumn mam kilkanaście, a więc takich wariantów będzie kilkaset.
Czy da się to zrobić w prostszy sposób?Ten post został edytowany przez Autora dnia 09.07.15 o godzinie 13:20