繁体   English   中英

dtypes。 Python中S1和S2的区别

[英]dtypes. Difference between S1 and S2 in Python

我有两个字符串数组:

In [51]: r['Z']
Out[51]: 
array(['0', '0', '0', ..., '0', '0', '0'], 
      dtype='|S1')

In [52]: r['Y']                                                                                                                
Out[52]: 
array(['X0', 'X0', 'X0', ..., 'X0', 'X1', 'X1'], 
      dtype='|S2')

S1和S2有什么区别? 只是他们持有不同长度的条目吗?

如果我的数组有不同长度的字符串怎么办?

我在哪里可以找到所有可能的dtypes列表及其含义?

请参阅dtypes文档

|S1|S2字符串是数据类型描述符; 第一装置阵列保持长度1,长度2的第二串| 管道符号是byteorder标志 ; 在这种情况下,不需要字节顺序标志,所以它设置为| ,意思不适用。

为了在numpy数组中存储可变长度的字符串,您可以将它们存储为python对象。 例如:

In [456]: x=np.array(('abagd','ds','asdfasdf'),dtype=np.object_)

In [457]: x[0]
Out[457]: 'abagd'

In [459]: map(len,x)
Out[459]: [5, 2, 8]

In [460]: x[1]=='ds'
Out[460]: True

In [461]: x
Out[461]: array([abagd, ds, asdfasdf], dtype=object)

In [462]: str(x)
Out[462]: '[abagd ds asdfasdf]'

In [463]: x.tolist()
Out[463]: ['abagd', 'ds', 'asdfasdf']

In [464]: map(type,x)
Out[464]: [str, str, str]

有关列表,请尝试以下方法:

http://docs.scipy.org/doc/numpy/reference/arrays.dtypes.html

举些例子:

http://docs.scipy.org/doc/numpy/reference/generated/numpy.dtype.html

|S25表示长度为25的字符串。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM