跳过或排除字段计算器表达式中的空变量

Skip over or exclude empty variable in field calculator expression

我正在尝试使用字段计算器解析街道地址,return 只是街道名称。我的表达方式适用于只有门牌号但后面没有街道名称的地址;当到达这些街道名称不存在的错误记录时,计算会抛出错误。我希望能够跳过这些错误的地址,而只是 return 它们的输入字符串。我已经尝试在我的 if 语句中添加第二个条件,但似乎无法获得正确的语法。本质上我想说的是 "if the house number is a digit and the street name is not blank, return the street name otherwise return the full input string"

def addressParser(inString):
    splitString = inString.split(' ',1)
    houseNumber = splitString[0]
    streetName = splitString[1]
    if houseNumber.isdigit() and if streetName != "":
        return streetName
    else:
        return inString

 addressParser( !FULLADDRESS! )

在此先感谢您的帮助

您可以在将 splitString[1] 分配给 streetName 之前向上移动您的条件,这样当未设置街道名称时它不会引发索引超出范围异常,

def addressParser(inString):
    splitString = inString.split(' ',1)
    houseNumber = splitString[0]
    if houseNumber.isdigit() and len(splitString) >= 2:
        return splitString[1]
else:
    return inString

希望对您有所帮助