python - Python 错误:“TypeError:'int' 对象不可调用
问题描述
distances = { "u":0,
"v":0,
"w":0,
"x":0,
"y":0,
"z":0 }
Np = ["u"]
nodes = ["u","v","w","x","y","z"]
max = 20;
for node in nodes:
if (node+"-u") in dictionary:
distances[node] = dictionary["u-"+node]
else:
distances[node] = max;
while Np != nodes:
for node in nodes:
if node not in Np:
if (distances[node] < max):
min = distances[node]
minnode = node;
max = min;
Np.append(minnode);
print(Np);
for node in nodes:
if node not in Np:
if (node+"-"+minnode) in dictionary:
distances[node] = min(distances[node], distances[minnode] + dictionary[node+"-"+minnode]);
请帮助我哪里出错了,我在最后一行代码出错:
distances[node] = min(distances[node], distances[minnode] + dictionary[node+"-"+minnode]);
它是说我正在做'int'的typeError,但我追溯代码开始,我看不出有什么问题。我正在使用字典对象和列表对象,也许这就是原因?请查看代码并修改
解决方案
min = distances[node]
minnode = node;
max = min;
从那里我们知道这min
是一个数字或其他东西的变量,但是您在最后一行代码中将它用作函数。
distances[node] = min(distances[node], distances[minnode] + dictionary[node+"-"+minnode]);
尝试为您的变量使用另一个名称。
推荐阅读
- asp.net - 显示时引导模式丢失数据
- java - 创建一个可重用的类
- python - 用于将数据从 s3 同步到另一个 s3 存储桶的 python 脚本
- java - Spring Boot - 如何跟踪所有请求和响应异常并保存到数据库中?
- mongodb - 我无法使用 Groovy 在 mongoDB 上执行聚合操作
- gcloud - GCloud SDK 无法解析策略文件 (JSON)
- spring-data-jpa - 连接两个都具有复合主键的实体,我们需要使用 spring data jpa 使用主键的一部分进行连接
- java - 如何检查在 Gradle 构建过程中使用了哪些已安装的 JDK
- android - 如何创建类似于 instagram 的探索选项卡的选项卡视图(类别)
- c# - C# 和 nodejs 中的 AES 加密