Python

파이썬 데이터 감지 안됨

ma

macbook_air
답변 완료
50 XP

파이썬에서 특정 데이터 입력이 아닐시 반환하는 문을 적었는데, 오류도 안뜨고 맞는 데이터를 입력해도 반환문이 실행됩니다.
if문 코드는 다음과 같습니다.

# ---------------------- 데이터베이스 불러오기
data_dict = {}
with open("./database.txt", "r", encoding='UTF-8') as file:
    for line in file:
        key, value, data = line.strip().split(',')
        data_dict[key] = value
# ---------------------- if 문
if (name in data_dict and book in data_dict) or (name + '-1' in data_dict and book + '-1' in data_dict):
    data_key = name if name in data_dict else name + '-1'
    data_key2 = book if book in data_dict else book + '-1'
    data3 = data_dict[data_key]
    
    dataurl = (f"{data_key}:", data3)
    print("--------------------------------")
    print(dataurl + "을(를) 인터넷 주소창에 입력하시면 자동 다운로드가 진행됩니다.\n1분뒤, 코드를 자동 종료합니다.")
    file.close()
    time.sleep(60)
    exit()
else:
    print("--------------------------------")
    print("DB에 등록이 안되어있습니다.\n10초뒤, 코드를 자동 종료합니다.")
    file.close()
    time.sleep(10)
    exit()```

데이터베이스 txt 파일입니다.
```txt
데이터1, 데이터2, 데이터3
데이터1-1, 데이터2-1, 데이터3-1```

오류코드도 안뜹니다. input에 데이터1과 데이터2를 적었는데 else문을 반환합니다.
데이터1-1과 데이터2-1도 마찬가지 입니다.

불러오는 중...