您可以通过创建一个dtype=object数组来执行此操作。如果尝试将长字符串分配给普通numpy数组,它将截断该字符串:>>> a = numpy.array(['apples', 'foobar', 'cowboy'])

>>> a[2] = 'bananas'

>>> a

array(['apples', 'foobar', 'banana'],

dtype='|S6')

但是当您使用dtype=object时,会得到一个python对象引用数组。因此您可以拥有python字符串的所有行为:>>> a = numpy.array(['apples', 'foobar', 'cowboy'], dtype=object)

>>> a

array([apples, foobar, cowboy], dtype=object)

>>> a[2] = 'bananas'

>>> a

array([apples, foobar, bananas], dtype=object)

实际上,因为它是一个对象数组,所以可以将任何类型的python对象分配给该数组:>>> a[2] = {1:2, 3:4}

>>> a

array([apples, foobar, {1: 2, 3: 4}], dtype=object)

但是,这会抵消使用numpy的许多好处,numpy速度非常快,因为它可以在大量连续的原始内存块上工作。使用python对象会增加很多开销。一个简单的例子:>>> a = numpy.array(['abba' for _ in range(10000)])

>>> b = numpy.array(['abba' for _ in range(10000)], dtype=object)

>>> %timeit a.copy()

100000 loops, best of 3: 2.51 us per loop

>>> %timeit b.copy()

10000 loops, best of 3: 48.4 us per loop

python创建字符串数组_如何创建任意长度字符串的numpy数组?相关推荐

  1. Python使用numpy函数vsplit垂直(行角度)拆分numpy数组(返回拆分后的numpy数组列表)实战:垂直拆分二维numpy数组、split函数垂直拆分二维numpy数组

    Python使用numpy函数vsplit垂直(行角度)拆分numpy数组(返回拆分后的numpy数组列表)实战:垂直拆分二维numpy数组.split函数垂直拆分二维numpy数组 目录

  2. 对任意长度字符串,删除其中的任意的N(N=0)个字符

    搜狗2018校招 题目描述: 搜狗汪仔机器人在参加一站到底节目录制时,被问到一个问题:"对任意长度字符串,删除其中的任意的N(N>=0)个字符,能形成多少种不同的子字符串呢?" ...

  3. 代码随想录训练营第二天|LeetCode977.有序数组的平方、209.长度最小的子数组、59.螺旋矩阵II

    day2 | LeetCode977.有序数组的平方.209.长度最小的子数组.59.螺旋矩阵II 创建时间: October 13, 2022 3:29 PM 一.今日任务 977.有序数组的平方 ...

  4. 代码随想录算法训练营第二天 | LeetCode977.有序数组的平方 ,209.长度最小的子数组,59.螺旋矩阵II

    代码随想录算法训练营第二天 | LeetCode977.有序数组的平方 ,209.长度最小的子数组,59.螺旋矩阵II 一. LeetCode977.有序数组的平方 1. 题目链接[LeetCode9 ...

  5. Leonard代码随想录算法训练营第二天| 977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II。

    第一章数组 (今日任务) 977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II ,总结 建议大家先独立做题,然后看视频讲解,然后看文章讲解,然后在重新做一遍题,把题目AC,最后整理 ...

  6. 代码随想录算法训练营第二天| 977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II。

    代码随想录算法训练营第二天| 977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II. 977.有序数组的平方 209. 长度最小的子数组 59. 螺旋矩阵 II 977.有序数组的 ...

  7. 代码随想录算法训练营第二天 | 力扣977.有序数组的平方,209.长度最小的子数组,59.螺旋矩阵II

    代码随想录算法训练营第二天 | 977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II 977.有序数组的平方 题目链接:有序数组的平方 题目描述: 给你一个按 非递减顺序 排序的整 ...

  8. json解析和字符串解析_高效创建和解析定界字符串

    json解析和字符串解析 描述 (Description) Converting a delimited string into a dataset or transforming it into u ...

  9. 怎么创建mysql文件_怎样创建数据库?

    谢邀~树懒君精心整理了一番,接下来就4种流行数据库的创建方法介绍. 一.创建数据库简介 数据库是储存关键资料的文件系统,用数据库管理系统建立大家的数据库,就可以更好地提供安全性.如今伴随着社会发展的迅 ...

最新文章

  1. c语言自动生成版本号,单片机C程序自动产生并增加版本号
  2. 我使用过的Linux命令之sftp - 安全文件传输命令行工具
  3. 32M内存 跑linux内核,32位Linux单进程4G内存限制
  4. redis 分布式锁的实现方式
  5. 12.15模拟:总结
  6. [转载] linux cgroup
  7. python 对redis key的基本操作
  8. k8s pod分类、核心组件、网络模型、kubectl常用命令
  9. LVGL官方文档-7.11.0-8-Porting-Logging
  10. 工作描述的介绍|如何写工作描述
  11. 学而滑稽之,不亦乐乎
  12. 用jQuery实现旋转木马效果(带前后按钮和索引按钮)
  13. Gem5模拟器,详解官网教程的statistics and output(三)
  14. 基于PaddleGAN项目人脸表情动作迁移学习(五)图像补帧上色与超分修复
  15. コナン純黒のナイトメア20180715
  16. anyRTC加持AI,打造下一代实时音视频引擎
  17. 开心一刻 程序--内行话
  18. 导出excel,后台执行,前台无反应
  19. 基于JavaWeb的家庭食谱管理系统设计与实现
  20. 【Python项目】Python基于tkinter实现笔趣阁小说下载器(附源码)

热门文章

  1. ZJOI2019一试翻车记
  2. C语言执行shellcode的五种方法
  3. cocos2d-x游戏开发(一)开始菜单
  4. GlobalAlloc全局内存的使用
  5. PulseAudio 设计和实现浅析
  6. PyCairo 中的文本
  7. 第10讲:高效存储 MongoDB 的用法
  8. 为什么我建议你现在学Vue3?
  9. C++中各种智能指针的实现及弊端(二)
  10. 构建DRM系统的重要基石——EME、CDM、AES、CENC和密钥