我正在尝试为AI编写目标优先级脚本。我的目标是根据评分groups = groupby( groupby( data, axis = 1 ), axis = 0 )
for group in groups :
average = avg( group, axis = 2 )
final_result.append = [group[0][0], group[0][1], average]
对目标进行排名,并根据最高定位优先级对列表进行重新排序。我终于遇到了一个错误,但我并不知道如何解决这个问题。 <script type="text/javascript">
if (location.href.indexOf("DEUTCH") != -1) {
document.head.innerHTML+='<script src="javascript_deutch.js"></script>';
}else{
document.head.innerHTML+='<<script src="javascript_english.js"></script>';
}
</script>
我是Python的新手,主要是通过谷歌搜索我在Ruby中使用的术语。我也很感激有关如何使用正确的Python&#34; style&#34;如果我犯了任何重大错误。
damage_per_shot / rate_of_fire
回溯看起来像
'NoneType' object has no attribute 'get'
答案 0 :(得分:0)
在函数focus_fire2
中,默认情况下在函数定义的参数中将data
设置为None
。除非您在调用它时将其设置为None
以外的其他内容,例如focus_fire2(data=something)
,否则当您执行时None
等同于data.get()
。我认为存在你的错误。您正在将NoneType
视为dict
。如果您在其上调用get
,则可能应该将其设置为等于某些dict
或其他。
答案 1 :(得分:0)
您收到错误,因为没有参数的run函数,默认情况下数据的类型为None
。对我来说,这不是一个好主意,对于非可选参数,将默认值设置为None。您需要使用参数focus_fire2(aDict)
运行函数,或将target_id=sorted(aDict, key=data.get)
更改为target_id=sorted(aDict, key=aDict.get, reverse=True)
target_id
,aDict
,target_id
中的排序键列表,其中第一个值更高。但del aDict[target_id]
是一个列表,此代码错误target_id
。 Options = {1:self.add(),
2:self.sub()
}
中必须包含哪些内容?
答案 2 :(得分:0)
只需替换
sorted(aDict, key=data.get)
通过
sorted(aDict, key=aDict.get)