亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何修復“'float'對象不可下標”

如何修復“'float'對象不可下標”

尚方寶劍之說 2022-07-26 10:12:45
您好,我的代碼有問題:xor_inputs = [(0.0, 0.0), (0.0, 1.0), (1.0, 0.0), (1.0, 1.0)]xor_outputs = [(0.0,), (1.0), (1.0), (0.0)]def eval_genomes(genomes, config):    for genomes_id, genome in genomes:        genome.fitness = 4.0        net = neat.nn.FeedForwardNetwork.create(genome, config)        for xi, xo in zip(xor_inputs, xor_outputs):            output = net.activate(xi)            genome.fitness -= (output[0] - xo[0])**2當我運行我的文件時,我有:" 基因組.fitness -= (輸出[0] - xo[0])**2TypeError:'float'對象不可下標“你能幫助我嗎 ?謝謝 !
查看完整描述

2 回答

?
收到一只叮咚

TA貢獻1821條經驗 獲得超5個贊

xor_outputs = [(0.0,), (1.0), (1.0), (0.0)]

由于尾隨逗號,此列表中的第一個元素是具有單個浮點數的元組。然而,其余的都是花車。

不過,您實際上并不需要元組。你可以做

xor_outputs = [0.0, 1.0, 1.0, 0.0]

然后更改output[0]output

genome.fitness -= (output - xo[0])**2

請注意,跟蹤這樣的錯誤是計算機程序員的很大一部分。我建議您閱讀這篇文章,了解很多可以幫助您追蹤此類問題的技巧。這些工具并不總能解決問題,但它們可以幫助您找到問題的原因。


查看完整回答
反對 回復 2022-07-26
?
慕娘9325324

TA貢獻1783條經驗 獲得超4個贊

我不知道您的任何值是什么,或者您的代碼在做什么,但是 output 或 xo 都是浮點值,而不是您認為的數組值。



查看完整回答
反對 回復 2022-07-26
  • 2 回答
  • 0 關注
  • 114 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號