素材牛VIP会员
checkio("aaaaaaaaaaaaaaaaaaaaa")我的return 应该是False?为什么网站说是true
 高***售  分类:Python  人气:1075  回帖:1  发布于6年前 收藏

num=[]
low=[]
cap=[]
def checkio(data):   
    for i in data:
        a=i.isdigit()
        if a == True:
            num.append(i)    
    for i in data:    
        a = i.islower()        
        if a == True:        
            low.append(i)
    for i in data:
        a = i.isupper()
        if a == True:                
            cap.append(i)       
    if num and low and cap != []:
        if len(data) >= 10:
            return True          
        else:
            return False          
    else:
        return False
 标签:python

讨论这个帖子(1)垃圾回帖将一律封号处理……

Lv5 码农
pa***in 技术总监 6年前#1

这是因为CheckiO测试环境和本地不同。全局变量之前多次测试初始化一次。第二测试使用由第一测试改变了全局变量。
解决方法是:

def checkio(data):

num=[]
low=[]
cap=[]

ps: 这是https://checkio.org/ 的一个测试题

 文明上网,理性发言!   😉 阿里云幸运券,戳我领取