أكثر

كيف يمكن تحديد عدد الكسور العشرية عند إضافة حقل جديد كمضاعف لجدول البيانات باستخدام لغة python في Qgis 2.1؟

كيف يمكن تحديد عدد الكسور العشرية عند إضافة حقل جديد كمضاعف لجدول البيانات باستخدام لغة python في Qgis 2.1؟


كيف أغير التعبير من أجل تحديد عدد الكسور العشرية؟

layer.dataProvider (). addAttributes ([QgsField ("اسم الحقل" ، QVariant.Double)])

كما قرأت في وثائق QGIS API:

اسم المعلمات نوع اسم الحقل نوع متغير الحقل ، المدعوم حاليًا: String / Int / Double typeName نوع الحقل (مثل char ، varchar ، text ، int ، serial ، double). len طول المجال قبل دقة المجال

لذلك أحاول:

layer.dataProvider (). addAttributes ([QgsField ("اسم الحقل" ، QVariant.Double ، 10 ، 3)])

لكنني أتلقى هذا الخطأ:

TypeError: الوسيطات لم تتطابق مع أي استدعاء تم تحميله بشكل زائد: QgsField (QString name = QString () ، Type type = QVariant.Invalid، QString typeName = QString ()، int len ​​= 0، int prec = 0، QString comment = QString ()) : الوسيطة 3 بها نوع غير متوقع 'int' QgsField (QgsField): الوسيطة 1 بها نوع غير متوقع 'str'

يحاول:

layer.dataProvider (). addAttributes ([QgsField ("اسم الحقل" ، QVariant.Double ، "مزدوج" ، 10 ، 3)])

هذا هو التصحيح الذي يوحي برسالة الخطأ.

لقد استخدمته في نظامي لإضافة حقلين (المنطقة والمحيط) في جدول السمات الخاص بملف الأشكال الخاص بي وهو يعمل.

الكود الخاص بي الذي تم قصه

... الحقول = [QgsField ('area'، QVariant.Double، 'double'، 20، 2)، QgsField ('perimeter'، QVariant.Double، 'double'، 10، 3)] ...

جدول سمات ملف الشكل الخاص بي:


شاهد الفيديو: 1 - تاسيس 2005 الجزء 1 تصنيف الاعداد. العمليات الحسابية على الاعداد الصحيحة. اواويات العمليات