Ocena wątku:
  • 0 Głosów - 0 Średnio
  • 1
  • 2
  • 3
  • 4
  • 5
Python - tabela atrybutów odwołanie
18-05-2012, 09:33,
#1
Python - tabela atrybutów odwołanie
Rozpoczynam przygodę z pythonem i niestety utknąłem w jednym miejsu.
Chciałbym mianowicie rozpocząć operacje na tabeli atrybutów. Moje pytanie, czy jest możliwość poruszania się po tej tabeli operując na numerze wiersza i kolumny. Na tą chwile potrafię czytać dane poruszając się od góry do dołu po wierszach. Czy idzie na przykład od razu czytać np komórkę z 5 wiersza i 3 kolumny? chodzi mi o funkcję podobną jaka jest w vba w Excelu czyli np x=Arkusz1.cells(5,3). Z góry dziękuje za pomoc.
18-05-2012, 10:14,
#2
RE: Python - tabela atrybutów odwołanie
Może to CI w czymś pomoże
http://dbfpy.sourceforge.net/
18-05-2012, 10:39,
#3
RE: Python - tabela atrybutów odwołanie
Dziękuje za odpowiedź. Jeżeli chodzi o odwołanie się do pliku dbf za bardzo mnie to nie ratuje. Docelowo wtyczka będzie używana na bazie postgis więc nie będzie plików dbf. W projekcje będzie wiele warstw, zarówno shp i postgisowych. Po wyborze aktywnej warstwy (layer = self.iface.activeLayer() ) chciałbym czytać dane bezpośrednio z niej.
18-05-2012, 13:23, (Ten post był ostatnio modyfikowany: 18-05-2012, 14:05 {2} przez borys.)
#4
RE: Python - tabela atrybutów odwołanie
Przez API Qgisa możesz jedynie iterować po obiektach i następnie ich atrybutach. Moja wtyczka Table Manager właśnie korzysta z bezpośredniego dostępu do pliku dbf, a następnie przeładowuje warstwę w QGISie. Ze względu na brak równoległego dostępu do pliku w Windowsach, wręcz najpierw usuwa warstwę z płótna, zapisuje zmiany do dbfa i dopiero ładuje. Również w postgresie tylko tak widziałbym rozwiązanie Twojego problemu...
Tzn. oczywiście w postgresie da się trochę na skróty, a przy wyłączonym keszowaniu tabeli atrybutów i bez użycia stylu opartego na danych nawet uniknąć przeładowywania warstwy, ale chyba nie obejdzie się bez całkowicie niezależnego zapytania do bazy.
18-05-2012, 22:51,
#5
RE: Python - tabela atrybutów odwołanie
(18-05-2012, 09:33)Jarek_Re napisał(a): Czy idzie na przykład od razu czytać np komórkę z 5 wiersza i 3 kolumny?

Czy możesz bliżej wyjaśnić, w jakim celu chcesz czytać z określonego wiersza?
21-05-2012, 14:16, (Ten post był ostatnio modyfikowany: 21-05-2012, 14:19 {2} przez Jarek_Re.)
#6
RE: Python - tabela atrybutów odwołanie
Potrzebuje takich odwołań bo, na podstawie np 3 wierszy wyliczam jedną wartość, którą chciałbym wpisać w określone miejsce. Tak dla przykładu. Pobieram wartości z kolumny A z wiersza 0,1,2 i wpisuje wynik w kolumnę B w wiersz 1. Dzięki takim odwołaniom mógłbym łatwo zapisywać wyniki. To samo tyczy się oczywiście czytania danych. Wyliczając np. kolumnę C potrzebuje dane z kolumny A i B, tyle że z różnych wierszy.
30-05-2012, 11:51,
#7
RE: Python - tabela atrybutów odwołanie
W tabeli atrybutów każdy wiersz to jeden obiekt. Dodatkowo, w zależności po której kolumnie sortujesz, obiekt taki może znaleźć się w różnych miejscach (wierszach) tabeli.
Czy na pewno interesuje Cię wybór danych z określonego wiersza? Czy może wyszukanie obiektu po jego ID lub innym atrybucie?
Podaj jakiś rzeczywisty przykład z Twojego zadania.


Podobne wątki
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Tabela atrybutów Nyzczsel 3 7 419 01-04-2019, 22:48
Ostatni post: jerresso
  tabela atrybutów skomplikowane dodanie tabeli dukasa 2 8 719 28-05-2018, 17:10
Ostatni post: dukasa
  Tabela atrybutów - Edycja. tommydi 1 8 506 13-10-2016, 00:55
Ostatni post: Binko
  Python: selekcja elementów randyX 0 6 135 28-06-2016, 15:05
Ostatni post: randyX
  Tabela atrybutów agmar_geo 1 10 315 21-03-2014, 11:32
Ostatni post: milena
  Szablon wydruku - tabela atrybutów wybranego obiektu Krzych 1 10 882 15-10-2013, 22:36
Ostatni post: borys
  Kreator zapytań a Python Rayo 2 13 515 26-07-2012, 20:39
Ostatni post: Rayo
  tabela atrybutow - zmiana wartosci pitt 2 14 959 14-12-2011, 17:42
Ostatni post: pitt
  Python: valueMap damian 8 33 849 09-12-2011, 02:07
Ostatni post: borys
  Python - pytanie Rayo 2 13 649 29-08-2011, 18:56
Ostatni post: Rayo

Skocz do: