首页 > 解决方案 > 这个程序有什么问题 - 没有任何反应?

问题描述

我是 python 编程的绝对初学者(第 4 周),我正在努力解决这个问题。我已经这样做了好几天了,但我真的被困住了。我已经将它调试为零错误,但是当我运行时,什么也没有发生……根本没有。我在这里做错了什么?

roster =[]

def init_(self, name):
  self.name = name

def setName (self,name):
  self.name = name

def getName(self):
  return self.name

def displayData(self):
  print("")
  print(" Player's Information")
  print("***********************")
  print("Player's Name: ", self.name)

def displayMenu():
  print("***Selection Menu***")
  print("1. View current roster")
  print("2. Add a player to the roster")
  print("2. Remove a player from the roster")
  print("3. Change a player name displayed on the roster")
  print("4. Quit")
  print()
  return int(input("Your Choice?"))

def viewRoster():
  print(' '.join(roster))

def addPlayer():
  newName = input("Who will bring honor to the squad?:")
  roster.append(newName)

def removePlayer ():
  removeName = input("Who's off the team?")
  if removeName in roster:
    del roster[removeName]
  else:
    print("Sorry", removeName, "is not on this team")

def editPlayer():
  oldName = input("What name would you like to change? ")
  if oldName in roster:
    newName = input("What is the new name?  ")
    print("Alright,", oldName, "is now called", newName)
  else:
    print("Sorry,", oldName, "was not found. Are you sure you spelled that right?")

标签: pythonpython-3.x

解决方案


你的代码中最大的问题是,虽然你定义了很多函数,但你没有调用一个函数。

此外,第一个功能应该是

def __init__(self, name):

接下来,您需要定义一个类来封装所有函数和 roster 变量。因为它是一个类,所以你添加 self. 在你的变量前面,比如名册。

然后你可以在别处导入这个类并调用函数。


推荐阅读