[英]Why is this Python code raising an error?
當我輸入例如NICK和HASLO時,出現以下錯誤:
Traceback (most recent call last):
File "G:/Wszystko/WONSZ/test.py", line 21, in <module>
nick = nick()
TypeError: 'str' object is not callable
當我輸入nick和haslo時,它可以正常工作,但不能正常工作。 這是代碼:
x = int
y = int
def nick():
print ("Podaj swoj nick: ",end=' ')
nick = input()
return nick
def haslo():
print ("Podaj swoje haslo: ",end=' ')
haslo = input()
return haslo
print ("Witaj!!!")
while True:
x = 0
y = 0
nick = nick()
haslo = haslo()
if nick == "nick":
x += 1
if haslo == "haslo":
y += 1
if x==0:
print("Nick bledny")
if y == 0:
print("Haslo bledne")
if x==1 and y==1:
break
print("Zalogowano")
我該怎么做才能解決此問題?
重復變量和函數名稱可能很危險。 在您的情況下,代碼變得混亂,Python無法正確判斷您是指變量還是函數。
在這里,我更改了變量的名稱。 它不僅有效,而且更易於閱讀:
x = int
y = int
def nick():
print ("Podaj swoj nick: ",end=' ')
nickInput = input()
return nickInput
def haslo():
print ("Podaj swoje haslo: ",end=' ')
hasloInput = input()
return hasloInput
print ("Witaj!!!")
while True:
x = 0
y = 0
nickVar = nick()
hasloVar = haslo()
if nickVar == "nick":
x += 1
if hasloVar == "haslo":
y += 1
if x==0:
print("Nick bledny")
if y == 0:
print("Haslo bledne")
if x==1 and y==1:
break
print("Zalogowano")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.