Answers:
这样做不是很舒服,但是以下是该文本框的必需语法(为了清楚起见,我将其写成几行):
{'expression': u'type the expression here',
'length': <type the length>,
'type': <code of the type>,
'name': u'type the field name here',
'precision': <type the precision>}
例如(注意使用大括号):
{'expression': u'"FLAG1"+"FLAG2"',
'length': 20, 'type': 6,
'name': u'FLAG1',
'precision': 5}
您需要编写与输入行数一样多的上述行,并用逗号分隔。例如,如果您的图层包含三个字段:
{'expression': u'"FLAG1"+"FLAG2"', 'length': 20, 'type': 6, 'name': u'FLAG1', 'precision': 5}, {'expression': u'100*"FLAG2"', 'length': 20, 'type': 6, 'name': u'FLAG2', 'precision': 5}, {'expression': u'"100-"FLAG2"', 'length': 20, 'type': 6, 'name': u'FLAG3', 'precision': 5}
它应该工作(对我有用)。
请注意,您可以避免使用这种面向字典的语法,而直接使用所需的值。例如,参考第一个示例,您可以简单地使用:
{u'"FLAG1"+"FLAG2"', 20, 6, u'FLAG1', 5}
如果不使用此语法,将显示以下错误:
缺少参数值:字段映射(行1)
0
字段长度(至少1
!)。请让我知道您是否解决了该问题。