Colab

f = open('dir.txt')
while not f.eof():
    line = f.readline()
    

for line in f.readlines():
    

def line_reader(f):
    while not f.eof():
        line = f.readline()
        yield line


for line in line_reader(f):
    

def get_password():
    while True:
        p = input('give password')
        if len(p) <4:
            yield (False, 'Too short', p)
        elif p.islower():
            yield (False, 'need upper', p)
        else:
            break
    yield (True, ' ', p)
    
            

for newpass in get_password():
    if not newpass[0]:
        print(newpass[2], 'is not a good password because', newpass[1])
    else:
        print('hurray')
        break

give password1
1 is not a good password because Too short
give password2
2 is not a good password because Too short
give password3
3 is not a good password because Too short
give password4
4 is not a good password because Too short
give password234
234 is not a good password because Too short
give passwordblahBLAH
hurray