python - 如何在类的元组中调用函数?
问题描述
我试图在显示为view()、add()、delete和exit_program的元组中调用函数。但是,每当我运行代码时,控制台都会返回:
TypeError: view() missing 1 required positional argument: 'self'
我还尝试在函数前面包含self或Menu,但无济于事。有没有什么办法解决这一问题?
这是代码:
from collections import namedtuple
class Menu(object):
def view(self):
pass
def add(self):
pass
def delete(self):
pass
def exit_program(self):
exit()
Option = namedtuple("Option", "label", "function")
_separator = "=" * 25
_options = {1: Option('View goals', view()), 2: Option('Add new goal', add()),
3: Option('Delete existing goal', delete()), 4: Option('Exit program', exit_program())}
解决方案
推荐阅读
- spring - 从 4.1.2 升级到 Spring 4.3.16 后特殊字符损坏
- go - 如何在 Golang 中使用此功能?
- c++ - msbuild 找不到预编译的头文件
- coldfusion - 遍历嵌套在结构中的数组
- julia - Julia 1.0 中 Bool 变量的奇怪行为
- python - 从命令提示符运行时程序抛出(文件中以 '\xff' 开头的非 UTF-8 代码)
- python - 交叉验证网格搜索背后的理论
- reporting-services - 在具有多个列的列组中编写 SUM 语句
- python - Selenium Python - 选择数据范围
- google-apps-script - Google Apps 脚本 - 如何从段落中获取文本?