小编arw*_*ht3的帖子

查找NumPy数组与值列表中的任何值相等的位置

我有一个整数数组,想要找到该数组在多个值列表中的任何值的位置.

这可以通过单独处理每个值,或者在循环中使用多个"或"语句来轻松完成,但我觉得必须有更好/更快的方法来完成它.我实际上正在处理大小的数组4000 x 2000,但这里是问题的简化版本:

fake = arange(9).reshape((3,3))

array([[0, 1, 2],
       [3, 4, 5],
       [6, 7, 8]])

want = (fake==0) + (fake==2) + (fake==6) + (fake==8)

print want 

array([[ True, False,  True],
       [False, False, False],
       [ True, False,  True]], dtype=bool)
Run Code Online (Sandbox Code Playgroud)

我想要的是一种want从涉及的单个命令fake和值列表中获取的方法[0, 2, 6, 8].

我假设有一个已经包含这个包的包将比我在Python中用循环编写一个函数要快得多.

python arrays numpy

13
推荐指数
3
解决办法
7057
查看次数

让python脚本打印到终端而不作为stdout的一部分返回

我正在尝试编写一个返回值的python脚本,然后我可以将其传递给bash脚本.事情是我想要在bash中返回一个单值,但我希望沿途有一些东西打印到终端.

这是一个示例脚本.我们称之为return5.py:

#! /usr/bin/env python
print "hi"
sys.stdout.write(str(5))
Run Code Online (Sandbox Code Playgroud)

我想要的是当我从命令行运行它时以这种方式执行:

~:five=`./return5.py`
hi
~:echo $five
5
Run Code Online (Sandbox Code Playgroud)

但我得到的是:

~:five=`./return5.py`
~:echo $five
hi 5
Run Code Online (Sandbox Code Playgroud)

换句话说,我不知道如何打印python脚本并清除标准输出,然后将其分配给我想要的特定值.

python stdout

7
推荐指数
1
解决办法
2万
查看次数

标签 统计

python ×2

arrays ×1

numpy ×1

stdout ×1