2016-11-14 5 views
-4
user1 = "aqa code" 
pass1 = "uzair123" 
username = input("Enter username: ") 
password = input("Enter password: ") 
while username != user1: 
    print("Access denied: username is incorrect try again ") 
    username = input("Enter username again: ") 
    if username == user1: 
     print("access granted") 
     while password != pass1: 
      print("Password is still incorrect") 
      password=input("Enter password again: ") 
      if password == pass1: 
       print("Access granted") 
while password != pass1: 
    print("Access denied,Password is incorrect") 
    password=input("Enter password again: ") 
    if password == pass1: 
     print("Access granted") 

답변에 입력 할 때 대/소문자를 구분하지 않도록 username/user1에 .lower()를 어떻게 추가합니까? 도와주세요.python. .lower()를 추가하는 방법.

+1

를 사용하는 경우 user1' 대신 '이름 == user1'의 – ettanany

+0

가능한 복제의 [어떻게 변환 == raw_input()를 사용 문자열을 소문자로 파이썬?] (http://stackoverflow.com/questions/6797984/how-to-convert-string-to-lowercase-in-python) – Nikaidoh

답변

0

.lower으로 전화를 걸면 입력 기능이 반환됩니다.

username = input("Enter username: ").lower() 
password = input("Enter password: ").lower() 
+0

* 호출, 통과하지 못했습니다. 그리고 함수에서 호출하지 않고이 함수가 반환하는 문자열에서 호출합니다. –

+0

시도했지만 작동하지 않습니다 – user3820439

+0

이상한. 그것은 나를 위해 작동합니다. – James

0

.lower()이 실제로 당신이 찾고있는 솔루션을 추가,하지만 당신은 당신의 흐름을 조금 단순화하기 위해 시도 할 수 있습니다, 그래서 당신은 당신이 당신의 입력 문을 수정할 때마다 편집 적은 곳이있다. 나는 각 루프 내에서 한 번 처음에 거짓 만 얻을 사용자 입력 각 루프에 대한 변수를 만드는 제안이 작업을 수행하려면 :

여기
loop_condition = False #initialize loop condition 
while not loop_condition: #loop until we say so 
    value = input("please enter a value: ") #human input 
    value = value.lower() #convert to lower case for comparison 
    if value == "password": #test 
     print("success") 
     loop_condition = True #loop will terminate when we hit our `while` again 
    else: 
     print("fail") 
print("rest of program goes here") 

당신은 우리가 한 번만 input()를 호출 참조 만에 변환 할 수 있습니다 한 곳에서 소문자. 단순함은 항상 친구입니다.

참고 : 당신은 단순히`username.lower()를 사용할 수 파이썬 2.7