gpt4 book ai didi

python 访问字典有两个键,只使用一个键

转载 作者:行者123 更新时间:2023-11-30 08:50:04 25 4
gpt4 key购买 nike

我目前正在使用 Q 学习,并且我有一本字典 Q[状态, Action ]其中每个状态可以是任何内容,即字符串、数字、列表……具体取决于应用程序。每个状态有 3 或 4 个可能的操作。对于每个状态,我需要找到具有最高 Q 值的操作。问题是我不知道如何直接从有两个键的字典访问状态的所有可能的操作,所以我尝试使用 for 循环:

for statex, actionx in self.array:
if statex == state and (actionx != None):
y[actionx] = self.array[statex, actionx]
y.argMax()

其中 argMax()

def argMax(self):
"""
Returns the key with the highest value.
"""
if len(self.keys()) == 0: return None
all = self.items()
values = [x[1] for x in all]
maxIndex = values.index(max(values))
return all[maxIndex][0]

问题是计算时间太长。有什么想法可以通过消除 for 循环来使其更快吗?

最佳答案

如果使用字典的字典会快得多:

    self.array[state][action]

关于python 访问字典有两个键,只使用一个键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33454112/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com