首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >NumPy错误,“Python布尔数组索引赋值需要0或1维输入,输入有2维”

NumPy错误,“Python布尔数组索引赋值需要0或1维输入,输入有2维”
EN

Stack Overflow用户
提问于 2020-02-05 23:28:57
回答 3查看 4K关注 0票数 0

我是python的新手,目前正在做一个项目,并且在这几行代码中遇到了这个错误。

代码语言:javascript
运行
复制
    g1_coll[obstacle==0]=tau*(g1+g2-g3+g4)
    g2_coll[obstacle==0]=tau*(g1+g2+g3-g4)
    g3_coll[obstacle==0]=tau*(-g1+g2+g3+g4)
    g4_coll[obstacle==0]=tau*(g1-g2+g3+g4)

有人能帮我理解这个吗?

EN

Stack Overflow用户

发布于 2020-04-29 01:07:13

我假设你得到的错误是因为你所有的数组都是二维的。我建议您尝试使用numpy.putmask(matrix, mask, new_matrix_values)

例如

代码语言:javascript
运行
复制
    mask = (obstacle == 0)
    numpy.putmask(g1_coll, mask, tau*(g1+g2-g3+g4))
    numpy.putmask(g2_coll, mask, tau*(g1+g2+g3-g4))
    numpy.putmask(g3_coll, mask, tau*(-g1+g2+g3+g4))
    numpy.putmask(g4_coll, mask, tau*(g1-g2+g3+g4))
票数 3
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60079094

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档