首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在python 3中使用numpy字符串数组?

如何在python 3中使用numpy字符串数组?
EN

Stack Overflow用户
提问于 2019-06-12 06:04:57
回答 1查看 4.9K关注 0票数 1

Numpy的类型字符串(如果适用的话指定endianness、数据的种类和每个项的数量)包括一个"String“选项'S',例如,'|S20''S20'表示一个固定长度的20字符(在C意义上,即20个字节)数据类型。

这个字符串('S')类型不推荐吗?

在python 2中,对固定长度的python字符串数组使用这种数据类型是有意义的。在python 3中,这种numpy类型现在对应于python字节对象,需要显式编码才能将其转换为python字符串。

在numpy数组中是否有存储python 3字符串的首选方法?数据类型长度现在与字符串中的字符数有什么关系?Unicode-string类型'U'是否存储固定数量的字符,还是取决于存储的字符(即它们是否有短编码)而有所不同?是否有一种将numpy字符串转换为python字符串的首选方法?

EN

回答 1

Stack Overflow用户

发布于 2019-07-19 15:31:42

在Python3中,numpy只使用numpy.str_将其字符串表示为unicode。你没必要担心这个。只需将所有字符串视为str,因为对您来说并没有太大的差别。存储字符串的首选方法是unicode格式,数据类型长度对应于数组中最长的字符串。此长度是固定的,因此对数组的任何更改都会将较长的字符串截断到该固定大小。在必要时,numpy会处理所有的转换。

代码语言:javascript
复制
print(type(np.asarray(['abc','xyz'])[0]))
print(type(np.asarray(['abc','xyz']).tolist()[0]))
代码语言:javascript
复制
<class 'numpy.str_'>
<class 'str'>
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56555594

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档