¿Cómo cambiar la expresión para definir el número de decimales?
layer.dataProvider().addAttributes([QgsField("fieldname", QVariant.Double)])
Como leí en la documentación de la API de QGIS:
Parameters
name Field name
type Field variant type, currently supported: String / Int / Double
typeName Field type (eg. char, varchar, text, int, serial, double).
len Field length
prec Field precision
Entonces intento:
layer.dataProvider().addAttributes([QgsField("fieldname", QVariant.Double, 10, 3)])
Pero me sale este error:
TypeError: arguments did not match any overloaded call:
QgsField(QString name=QString(), Type type=QVariant.Invalid, QString
typeName=QString(), int len=0, int prec=0, QString comment=QString()):
argument 3 has unexpected type 'int'
QgsField(QgsField): argument 1 has unexpected type 'str'