工作中遇到的一个需求,记录一下(银行帐号这个字段只能输入数字或者大写字母)

昨天领导让实现一个需求,截图如下

 

复习一下所用到的知识:

str = "runoob.com"
print(str.isalnum()) # 判断所有字符都是数字或者字母
print(str.isalpha()) # 判断所有字符都是字母
print(str.isdigit()) # 判断所有字符都是数字
print(str.islower()) # 判断所有字符都是小写
print(str.isupper()) # 判断所有字符都是大写
print(str.istitle()) # 判断所有单词都是首字母大写,像标题
print(str.isspace()) # 判断所有字符都是空白字符、\t、\n、\r

 

应用到实际工作环境中(odoo12  python3.6)

 @api.depends('acc_number')
    def _compute_acc_number(self):
        """判断输入的字符是否是由大写字母和数字组成的"""
        for item in self:  # 在odoo中计算字段都要循环(防止多条记录的情况)
            if str(item.acc_number) != 'False':
                for i in item.acc_number:  # 这个循环是,循环银行账号这个字符串中的每一个元素
                    if str(i).isdigit():
                        pass
                    elif str(i).isupper():
                        pass
                    else:
                        raise ValidationError('只能输入数字和大写字母!请检查后重新输入')

 

posted @ 2023-01-29 09:48  *感悟人生*  阅读(84)  评论(0编辑  收藏  举报