花了幾個小時專研這個批量處理,由於本人愚鈍,所以費的時間較長,在網上搜的話,可以看到一大堆字段計算器按條件賦值的結果,但是就是沒有人測試條件是漢字的哪一類。我利用網上的答案,就是直接用的一個if語句然后就可以直接出來英文或是數字的結果,但是對於漢字則沒有辦法。然后又參照一些其他的文檔。知道了,在ArcMap中使用python時需要將其轉為utf-8,這樣便可以按條件查詢了。
還有就是python空格問題,不是空2就是空4 ,看得arcmap幫助文檔得知。然后下面是代碼。
import os import sys import re str1='超市'.decode('utf8') str2='超市2'.decode('utf8') //需要decode是因為字段可能是ascii編碼 def Reclass(kind): if str1 in kind or str2 in kind : return '超市' else: return '其他'
用法就是點擊你要賦值的那一列,我這里是Kind,字段計算器,然后如上圖寫,下部的代碼則是POIName則是你需要判斷條件的字段
然后就出來了,各位看官要是覺得不錯,點個推薦吧!!!