python函数资料计算 如何用python计算函数的值( 三 )


partcount = feat.partCount
pntcount = 0
# Enter while loop for each part in the feature (if a singlepart
# feature, this will occur only once)
while partnumpartcount:
part = feat.getPart(partnum)
pnt = part.next()
# Enter while loop for each vertex
while pnt:
pntcount += 1
pnt = part.next()
# If pnt is null, either the part is finished or there
# is an interior ring
if not pnt:
pnt = part.next()
partnum += 1
return pntcount
将点要素类中每个点的 x 坐标平移 100 。
表达式:
shiftXCoordinate(!SHAPE!)
代码块:
def shiftXCoordinate(shape):
shiftValue = https://www.04ip.com/post/100
point = shape.getPart(0)
point.X += shiftValue
return point 几何单位转换
几何字段的面积和长度属性可通过用 @ 符号表示的单位类型进行修改 。
面积测量单位关键字:
ACRES | ARES | HECTARES | SQUARECENTIMETERS | SQUAREDECIMETERS | SQUAREINCHES | SQUAREFEET | SQUAREKILOMETERS | SQUAREMETERS | SQUAREMILES | SQUAREMILLIMETERS | SQUAREYARDS | SQUAREMAPUNITS | UNKNOWN
线性测量单位关键字:
CENTIMETERS | DECIMALDEGREES | DECIMETERS | FEET | INCHES | KILOMETERS | METERS | MILES | MILLIMETERS | NAUTICALMILES | POINTS | UNKNOWN | YARDS
注:
如果数据存储在地理坐标系中且具有线性单位(例如英尺),则会通过测地线算法转换长度计算的结果 。
警告:
转换地理坐标系中数据的面积单位会生成不正确的结果,这是由于沿 globe 的十进制度并不一致 。
计算某要素的长度(以码为单位) 。
表达式:
!shape.length@yards!
计算某要素的面积(以英亩为单位) 。
表达式:
!shape.area@acres!
测地线面积和长度也可以通过带 @(后跟测量单位关键字)的 geodesicArea 和 geodesicLength 属性进行计算 。
计算某要素的测地线长度(以码为单位) 。
表达式:
!shape.geodesicLength@yards!
计算某要素的测地线面积(以英亩为单位) 。
表达式:
!shape.geodesicArea@acres! 代码实例 - 日期
日期和时间可使用 datetime 和 time 模块进行计算 。
计算当前日期 。
表达式:
time.strftime("%d/%m/%Y")
计算当前日期和时间 。
表达式:
datetime.datetime.now()
计算的日期为 2000 年 12 月 31 日 。
表达式:
datetime.datetime(2000, 12, 31)
计算当前日期和字段中的值之间的天数 。
表达式:
(datetime.datetime.now() - !field1!).days
通过向字段中的日期值添加 100 天来计算日期 。
表达式:
!field1! + datetime.timedelta(days=100)
计算字段中的日期值为一周中的周几(例如,星期天) 。
表达式:
!field1!.strftime('%A') 代码实例 - 字符串
可以使用多种 Python 编码模式来完成字符串计算 。
返回最右侧三个字符 。
表达式:
!SUB_REGION![-3:]
将所有大写字母 P 替换为小写字母 p 。
表达式:
!STATE_NAME!.replace("P","p")
通过空格分隔符串连两个字段 。
表达式:
!SUB_REGION! + " " + !STATE_ABBR! 转换为正确的大小写形式
下列各例显示的是转换单词的不同方法,这些方法可使每个单词的首字母变为大写、其余字母变为小写 。
表达式:
' '.join([i.capitalize() for i in !STATE_NAME!.split(' ')]) 表达式:
!STATE_NAME!.title() 正则表达式
Python 的 re 模块提供了正则表达式匹配操作,可用于对字符串执行复杂的模式匹配和替换规则 。
re - 正则表达式运算正则表达式的用法
使用单词 Street 替换 St 或 St.,在字符串的末尾生成一个新单词 。

推荐阅读