微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python len() 字段计算

如何解决python len() 字段计算

我正在尝试在 Arcgis pro 中的字段计算中编写脚本。来自其他字段的值将汇总到一个新字段中。对于低于 60 米的值,该值应设置为 60。应汇总所有其他值。此外,型号名称应以大写字母书写。如果任何字段中都没有值,则应显示“无数据”。 不幸的是我找不到错误..

对此的任何帮助将不胜感激!

值 (!Typ1!,!Typ2!,!Typ3!,!Shape_area!,!total!)

def value (Fieldvalue1,Fieldvalue2,Fieldvalue3,Fieldvalue4,Fieldvalue5):
    
       
        if len(Fieldvalue1) > 1:
            combine = str(Fieldvalue1) + "_" + Fieldvalue4
            return combine
    
        elif len(Fieldvalue2) > 1:
            combine = str(Fieldvalue2) + "_" + Fieldvalue4
            return combine
    
        elif len(Fieldvalue3) > 1:
            combine = str(Fieldvalue3) + "_" + Fieldvalue4
            return combine

        if Fieldvalue4 < 60:
            return "60"

        else:
            return "No data"


        Fieldvalue5 = Fieldvalue5.upper()

解决方法

在if比较表达式中尝试将Fieldvalue4在加法之前转换为str或转换为int(如果是str)。

,

字段具有长度属性:

def value (Fieldvalue1,Fieldvalue2,Fieldvalue3,Fieldvalue4,Fieldvalue5):

   
    if Fieldvalue1.length > 1:
        combine = str(Fieldvalue1) + "_" + Fieldvalue4
        return combine

    elif Fieldvalue2.length > 1:
        combine = str(Fieldvalue2) + "_" + Fieldvalue4
        return combine

    elif Fieldvalue3.length > 1:
        combine = str(Fieldvalue3) + "_" + Fieldvalue4
        return combine

    if Fieldvalue4 < 60:
        return "60"

    else:
        return "No data"

    # Dead code here
    Fieldvalue5 = Fieldvalue5.upper()

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。