在使用Python 3.3.2,Numpy 1.7.1和Pyhton-netcdf4 1.0.4的系统上,我正在试验这个:
> from netCDF4 import Dataset
> f = Dataset('testfile.nc4', 'a')
> seqs = f.groups('calibration_params').variables['calibration_sequence']
> print(seqs[:])
[(1, 1, 1000, 500) (2, 1, 1000, 500) (3, 3, 1000, 500) (4, 1, 1000, 500)
(5, 2, 1000, 500) (6, 1, 10000, 0) (7, 1, 1000, 500) (8, 1, 1000, 500)
(9, 0, 1000, 500)]
> tmp = seqs[:]
> tmp[0][3] = 0
> print(tmp)
[(1, 1, 1000, 0) (2, 1, 1000, 500) (3, 3, 1000, 500) (4, 1, 1000, 500)
(5, 2, 1000, 500) (6, 1, 10000, 0) (7, 1, 1000, 500) (8, 1, 1000, 500)
(9, 0, 1000, 500)]
> seqs[:] = tmp
> print(seqs[:])
[(1, 2, 3, 4) (5, 6, 7, 8) (9, 1283, 1, 40960) (0, 0, 0, 49536)
(0, 0, 44312, 0) (0, 35008, 0, 0) (49440, 1, 40960, 0)
(0, 43312, 29442, 0) (34960, 8660, 0, 34912)]
> print(tmp)
[(1, 1, 1000, 0) (2, 1, 1000, 500) (3, 3, 1000, 500) (4, 1, 1000, 500)
(5, 2, 1000, 500) (6, 1, 10000, 0) (7, 1, 1000, 500) (8, 1, 1000, 500)
(9, 0, 1000, 500)]
正如您所看到的,它并非完全随机,但我无法弄清楚问题的根源。我检查了格式,但所有(seqs和tmp数组)都是'< U2' 。关于出了什么问题的任何线索?