gpt4 book ai didi

python - 如何矢量化这个?

转载 作者:行者123 更新时间:2023-11-28 22:40:19 26 4
gpt4 key购买 nike

我正在寻找对此进行矢量化的方法:

for x in range(1,N+1):
mul3ou5 = "inf"*(x%3 == 0)+"luans"*(x%5==0)
print str(x)*(mul3ou5 =="")+mul3ou5

想法是使用一个 numpy 数组并通过对 numpy 数组的一个操作替换 for 循环 numpy.array(range(100))

提前致谢

最佳答案

虽然@morningsun 的回答很好,但另一个选择是(使用 boolean indexing ):

import numpy as np

x = np.arange(1, N+1)
s = x.astype('S8')
s[x % 3 == 0] = 'inf'
s[x % 5 == 0] = 'luans'
s[x % 15 == 0] = 'influans'

我觉得这更直观,因为它保留了显式模数 (%) 操作。

关于python - 如何矢量化这个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33799879/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com