码迷,mamicode.com
首页 > 编程语言 > 详细

迭代器对象numpy.nditer在数组上进行迭代——修改数组的值

时间:2020-02-09 16:35:24      阅读:138      评论:0      收藏:0      [点我收藏+]

标签:range   pre   print   dwr   sha   read   修改   str   iter   

nditer对象有另一个可选参数op_flags,默认情况下,nditer将视待迭代遍历的数组为只读对象(read-only),为了在遍历数组的同时,实现对数组元素值得修改,必须指定op_flags=[‘readwrite‘]模式:

np.nditer(a, op_flags=[readwrite])

修改数组值的示例:

import numpy as np
a = np.arange(0,60,5) 
a = a.reshape(3,4)  
print  原始数组是:  
print a 
print  \n  
for x in np.nditer(a, op_flags=[readwrite]): 
    x[...]=2*x 
print  修改后的数组是:  
print a

输出如下:

原始数组是:
[[ 0 5 10 15]
 [20 25 30 35]
 [40 45 50 55]]

修改后的数组是:
[[ 0 10 20 30]
 [ 40 50 60 70]
 [ 80 90 100 110]]

 

迭代器对象numpy.nditer在数组上进行迭代——修改数组的值

标签:range   pre   print   dwr   sha   read   修改   str   iter   

原文地址:https://www.cnblogs.com/ratels/p/12287251.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!