数组与字符串的转换
tostring 方法
In [1]:
- import numpy as np
In [2]:
- a = np.array([[1,2],
- [3,4]],
- dtype = np.uint8)
转化为字符串:
In [3]:
- a.tostring()
Out[3]:
- '\x01\x02\x03\x04'
我们可以使用不同的顺序来转换字符串:
In [4]:
- a.tostring(order='F')
Out[4]:
- '\x01\x03\x02\x04'
这里使用了Fortran的格式,按照列来读数据。
fromstring 函数
可以使用 fromstring
函数从字符串中读出数据,不过要指定类型:
In [5]:
- s = a.tostring()
- a = np.fromstring(s,
- dtype=np.uint8)
- a
Out[5]:
- array([1, 2, 3, 4], dtype=uint8)
此时,返回的数组是一维的,需要重新设定维度:
In [6]:
- a.shape = 2,2
- a
Out[6]:
- array([[1, 2],
- [3, 4]], dtype=uint8)
对于文本文件,推荐使用
loadtxt
genfromtxt
savetxt
对于二进制文本文件,推荐使用save
load
savez