python - 为什么这个 Python 代码会引发错误?
问题描述
当我输入例如 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")
推荐阅读
- python - 按钮图像没有出现,Tkinter
- amazon-web-services - 如何从前端 javascript 调用 AWS step 函数
- angular - ng2-pdfjs-viewer 将对象从组件传递到 html
- git - 通过 SSH 将 VS Code 连接到 Github 导致 SSH 错误
- google-chrome - 使用 Chrome 设备管理进行自助服务终端式应用部署
- python - 登录成功后不能发帖
- wordpress-rest-api - 通过 WP_REST_API 更改 BP 头像
- azure - Azure 与 Selenium WebDriver 错误
- c - 如何在并非所有人都使用 Visual Studio 的 C 项目上进行协作?
- node.js - 在 cleardb 查询成功后 1 分钟,Node.js 应用程序崩溃了