【发布时间】:2013-10-23 15:17:38
【问题描述】:
我正在创建一个执行一些简单图论计算的类,我在代码底部创建了一个字典,我想知道如何在类中使用字典?
我想试试这样的,
k = Graph(d.keys())
但它没有工作,它给了我这个错误
TypeError: __init__() takes exactly 3 arguments (2 given)
有人有什么建议吗?
class Graph:
"""docstring"""
def __init__(self, node, degree):
self.node = node
self.degree = degree
def Add(self):
return sum(node)
if __name__ == '__main__':
infile = raw_input("Enter File Name: ")
myfile = open(infile, 'r')
d = {}
with myfile as f:
next(f)
for line in f:
k,v = line.split()
d[int(k)] = int(v)
next(f)
k = d.keys()
v = d.values()
【问题讨论】:
-
您想为每一行创建一个
Graph()对象吗?当您将d.keys()传递给Graph()构造函数时,您还不清楚您期望发生什么。 -
读取时文件包含什么样的数据?您需要向我们详细说明输入是什么以及您希望看到什么输出。
-
不应该是
Add方法中的return sum(self.node)吗? -
@MartijnPieters ,我是编程新手,所以我有点不知道自己在做什么,但我想要导入一长串键并将它们表示为“节点”。据我了解,如果我将它传递给“Graph() 构造函数”,我可以使用列表“k”并在类中对其进行操作。
标签: python class object dictionary