dayjournal memo

Total 975 articles!!

QGIS #040 - レイヤのフィールド名を取得するスクリプト

Yasunori Kirimoto's avatar

QGISで、レイヤのフィールド名を取得するスクリプトは下記のように記述します。



layer = iface.activeLayer()

# QGIS2ではpendingFields()
fields = layer.pendingFields()
print "fields: " + str(fields)

for f in fields:
    print "fieldname: " + str(f.name())
    

# QGIS3ではfields()
fields = layer.fields()
# QGIS3ではprint文にはカッコを付ける(Python3)
print ("fields: " + str(fields))

for f in fields:
    print ("fieldname: " + str(f.name()))
    

実行すると選択されたレイヤのフィールド名がコンソールに表示されます。 QGIS_040_01


全てのレイヤのフィールドをオブジェクトで取得:


# QGIS2ではpendingFields()
fields = layer.pendingFields()
print "fields: " + str(fields)

# QGIS3ではfields()
fields = layer.fields()
# QGIS3ではprint文にはカッコを付ける(Python3)
print ("fields: " + str(fields))

.name()でフィールド名を取得:


for f in fields:
    print "fieldname: " + str(f.name())

# QGIS3ではprint文にはカッコを付ける(Python3)
for f in fields:
    print ("fieldname: " + str(f.name()))
    

レイヤのフィールド名を調べる事ができます。



book

Q&A