Wes*_*ssi 2 python if-statement python-3.x
以下是无效语法,因为elif需要在if块之后:
def get_number(self, bsObj):
    temp = self.get_data('text1', bsObj)
    if temp > -1:
        return temp
    temp = self.get_info('text', bsObj)
    elif temp > -1:
        return temp
    else:
        return 0
我只想返回self.get_info('text', bsObj)if self.get_data('text1', bsObj)小于-1 的结果.
我可以通过这样做来修复它,但是调用相同的函数两次似乎非常无效:
def get_number(self, bsObj):
    if self.get_data('text1', bsObj) > -1:
        return self.get_data('text1', bsObj)
    elif self.get_info('text', bsObj) > -1:
        return self.get_data('text', bsObj)
    else:
        return 0
您可以使用第二个if:
def get_number(self, bsObj):
    temp = self.get_data('text1', bsObj)
    if temp > -1:
        return temp
    temp = self.get_info('text', bsObj)
    if temp > -1:
        return temp
    else:
        return 0由于第一个if 包含return语句,elif如果满足约束,解释器将永远不会到达您的行.
| 归档时间: | 
 | 
| 查看次数: | 178 次 | 
| 最近记录: |