Pliosauroidea 2021-09-03 11:38 采纳率: 62.5%
浏览 20
已结题

numpy 按条件翻转 无法正确实现

# 创建一个包含1-10中所有整数的向量,并对3-8之间的元素取相反数,即输出[1,2,-3,-4,-5,-6,-7,-8,9]
import numpy as np

a = np.arange(1, 10)
a = np.where(3 <= a <= 9, -a, a)
print(a)

要求如注释,报错如下

img


写成a = np.where((3 <= a), -a, a)就不会报错,但与题目要求不符
想知道如何使用np.where完成如上题目

  • 写回答

1条回答 默认 最新

  • 天元浪子 优质创作者: python技术领域 2021-09-03 11:42
    关注
    >>> a = np.arange(1, 10)
    >>> np.where((3<=a)&(a<=9), -a, a)
    array([ 1,  2, -3, -4, -5, -6, -7, -8, -9])
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 9月11日
  • 已采纳回答 9月3日
  • 创建了问题 9月3日