首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

perl等价的python array.array(typecode,..)

在Python中,array.array()是一个用于创建固定类型数组的内置类。它可以存储相同类型的数据,并且比列表更节省内存。typecode是一个字符,用于指定数组中元素的数据类型。

以下是一些常用的typecode及其对应的数据类型:

  • b:有符号字节
  • B:无符号字节
  • i:有符号整数
  • I:无符号整数
  • f:单精度浮点数
  • d:双精度浮点数

与Perl中的@array相比,Python中的array.array()更像是一个简化版的列表,只能存储相同类型的数据。

例如,在Perl中,你可以这样创建一个数组:

代码语言:perl
复制
my @array = (1, 2, 3, 4);

在Python中,你可以这样创建一个array.array()

代码语言:python
代码运行次数:0
复制
import array

array_obj = array.array('i', [1, 2, 3, 4])

在这个例子中,typecode'i',表示数组中的元素是有符号整数。

由于array.array()是一个内置类,因此它的性能通常比使用Python列表实现的数组要好。然而,它的功能比列表简单得多,不支持许多列表操作。

总之,array.array()是一个用于创建固定类型数组的内置类,它与Perl中的@array类似,但功能更为简单。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

【测试开发】python系列教程:array库

上一篇 【测试开发】python系列教程:decimal库 这次我们分享pythonarray库 ---- array 模块定义了一种对象类型,可以紧凑表示以 字符、整数、浮点数...array 模块在使用时,需要先实例化一个数组对象,然后再进行下一步操作: array.array(typecode[, initializer]) ''' 参数: typecode: 指定当前数组所能接受元素数据类型...initializer: 可选参数, 数组初始化时添加元素, 必须是可迭代对象, 元素数据类型受参数 typecode 限制 ''' typecode 参数值是一个字符,这个字符被称为类型码...属性 array.typecode: 获取数组类型码 array.itemsize: 获取在内部表示中一个元素字节长度 import array test = array.array('u', '...这等价于 for x in list: a.append(x),区别在于如果发生类型错误,数组将不会被改变。

15320

Python之数组模块——array

数组模块array大部分属性及方法应用: import array #array.array(typecode,[initializer])——typecode:元素类型代码;initializer...arr = array.array('i',[0,1,1,2,3]) print(arr) #array.typecodes——模块属性 print('\n输出一条 包含所有可用类型代码字符串:')...print(array.typecodes)#注意,调用者是模块名,不是某个对象 #array.typecode——对象属性 print('\n输出 用于创建数组类型代码字符:') print(arr.typecode...用于创建数组类型代码字符: i 输出 数组中一个元素字节长度 4 将一个新值附加到数组末尾: array('i', [0, 1, 1, 2, 3, 4]) 获取数组在存储器中地址、元素个数...参考地址: Python官方文档英文版之Array模块 Python官方文档中文版之Array模块

1.5K20
  • Python3之数组(array)

    https://docs.python.org/3.5/library/array.html#module-array 当我们需要1000万个浮点数时候,数组(array)效率要比列表...1.数组 如果我们需要一个只包含数字列表,那么array.array比list更高效。数组支持所有跟可变序列有关操作,包括.pop,.insert和.extend。...另外,数组还提供从文件读取和存入文件更快方法,如.frombytes和.tofile。 Python数组跟C语言数组一样精简。...另外+=和*=运算符可以用于array添加。 从python3.4开始,数组(array)类型不再支持诸如list.sort()这种就地排序方法。...要给数组排序的话,得用sorted函数新建一个数组: >>> import array >>> a = array.array(a.typecode, sorted(a)) array 与内置list

    22.2K71

    Python做投资-python仿真等价鞅下收益曲线

    如果我们按照这样次序下注:1,2,4,8,16,......,2^n.只要有一次获胜,那么我们就从头再来。这里我们可以看出,每次获胜都可以赢得1元钱。因为2^n次方数列前n-1次项和为2^n-1。...这里我们就能看出,只要你有足够多钱,那么你总能赚钱。这一游戏,就叫做等价鞅。..., winOrLossGenerator 函数用于产生size个输或者赢序列。...每次运行结果都是不一样,我们取一次观察一下资金变化情况。 ? 我们可以看到,这次仿真中,最大资金回测大概在72元左右。我们修改一下获胜概率,假设我们硬币是不均匀,而赌场中往往是这呀。...如果我们获胜概率只有2,那么资金曲线是这样: ? 获胜率为0.4,情况还马马虎虎 ? 获胜概率为0.6: ? 获胜概率为0.9时候,资金曲线就比较平稳向上了: ?

    87950

    PythonPerl 垫底,C语言才是最环保编程语言!

    2017年,葡萄牙大学研究人员团队曾发表过一篇题为《各种编程语言能耗》论文,他们比较了各个编程语言(及其编译器/解释器)能耗,为此他们研究了 27 种知名编程语言运行时、内存使用情况以及能耗。...最后,C 成为了无可争议赢家,其能耗最低,而 PythonPerl 则处于最末位。 据悉,这项研究采用了多种方法论和多个基准测试。...Perl、Lua 和 Python能耗高 下面看一下解释型语言在速度与能耗方面的表现,由测试可知解释型语言才是能耗最高语言,比如 Perl、Lua 和 Python。...而5 种最慢语言也是解释型语言,如:Lua、PythonPerl、Ruby 和 Type。...参考链接: https://www.cnx-software.com/2021/11/18/save-the-planet-program-in-c-avoid-python-perl/

    1.4K30

    Python骚操作从列表推导和生成器表达式开始

    扁平序列存放是对象值,包括str、bytes、bytearray、memoryview和array.array。 扁平序列值是字符、字节和数值这种基础类型。...可变序列,包括list、bytearray、array.array、collection.deque、memoryview。...Tips 本小节内容是我看《流畅Python》第一遍时记录知识点: Python标准库用C实现了丰富序列类型。 列表推导,就是指a = [x for x in something]这种写法。...array.array('I', x for x in something) ,array构造方法第一个参数指定了数组中数字存储方式。...小结 本文首先介绍了序列概念,然后演示了Python常规骚操作——列表推导,最后引出了生成器表达式这个看似复杂实则简单语法。列表是可变,它有个不可变孪生兄弟,元组。

    50740

    流畅Python 2. 数据结构 - 序列构成数组

    array.array 只能存一种类型,存放是值(只能存字符、字节、数值这种基础类型) ---- 按照是否可修改: 可变序列:list,bytearray,array.array,collections.deque...$¢£¥€¤' print(tuple(ord(symbol) for symbol in symbols)) import array print(array.array('I', (ord(symbol...) for symbol in symbols))) # ord(symbol) 外面需要括号,因为array需要2个构造参数 # typecode (must be b, B, u, h, H, i,...traveler_ids): print('{}/{}'.format(passport[0], passport[1])) print('%s/%s' % passport) # 跟上面的等价...列表替代 9.1 数组 只包含数字列表,array.array 比 list 更高效,支持所有可变序列操作 还可以 从文件读取 和 存入文件,.frombytes,.tofile # 数组 from

    48520

    Python如何设计面向对象类(上)

    Python是一门高级语言,支持面向对象设计,如何设计一个符合Python风格面向对象类,是一个比较复杂问题,本文提供一个参考,表达一种思路,探究一层原理。...覆盖类属性 实例覆盖 Python有个很独特特性:类属性可用于为实例属性提供默认值。实例代码中typecode就能直接被self.typecode拿到。...但是,如果为不存在实例属性赋值,会新建实例属性,类属性不会受到影响,self.typecode拿到是实例属性typecode。...但是更符合Python风格做法是定义子类: class ShortVector2d(Vector2d): typecode = 'f' Django基于类视图大量使用了这个技术。...参考资料: 《流畅Python》第9章 符合Python风格对象 https://www.jianshu.com/p/7fc0a177fd1f

    92630

    python 自定义类(特殊方法)

    覆盖类属性 learn from 《流畅python》 from array import array import math class Vector2D: typecode = 'd'..._Vector2D__x) # 315687.0 名称改写是一种安全措施,不能保证万无一失:它目的是避免意外访问,不能防止故意做错事 Python 解释器不会对使用 单个下划线 属性名做特殊处理...,不过这是很多 Python 程序员严格遵守约定,他们不会在类外部访问这种属性。...# d print(v2.typecode) # f typecode 是类属性,一旦实例对象赋值 typecode后,实际是创建了新实例属性 如果为不存在 实例属性 赋值,会 新建 实例属性,类属性不受影响...,但是实例属性会遮盖同名类属性 还可以订制类数据属性: class anOtherVec(Vector2D): typecode = 'f' # 只是修改子类数据类型 v4 = anOtherVec

    57140

    python变量和变量赋值几种形式

    例如: a, b, c, d = ("shell","perl","php","python") a, b, c, d = ["shell","perl","php","python"] 但是变量和序列中元素必须一一对应...正如这里等价于: a="l" b=["o", "n", "g"] 下面两种赋值方式得到结果是一样,a是字符串,b是列表,b都包含3个元素: a, *b = ("shell","perl","php"...,"python") a, *b = ["shell","perl","php","python"] 赋值结果: shell ['perl', 'php', 'python'] (6)赋值方式等价于...在很大程度上来说,Python中只要是简化形式,基本上都比更复杂等价形式效率更高。...而(2)(3)是等价,(5)(6)也是等价,它们都是直接在内存中原始列表处修改,不会有拷贝操作,新建数据对象仅仅只是一个元素。

    2.7K20

    因为对PerlPython不满?圣诞节无聊?编程语言出现都这么随意吗?

    脚本语言:Perl Perl 发布于 1987 年。 Perl 起源于操作系统控制台(shell)命令。...面向对象解释式脚本语言:Python Python 诞生于 1989 年,作者为了打发圣诞节无趣,决心开发一个新脚本解释程序,做为 ABC 语言一种继承。 ABC 是作者开发教学语言。...PythonPerl 用于相同领域,是面向过程+面向对象语言。 A.26....纯面向对象解释式脚本语言:Ruby Ruby 诞生于 1996 年,作者基于对 PerlPython 不满而设计,纯面向对象脚本语言。...最新版本是 2014 发布 C#5.0。.NET 4.0 引入了动态类型,使得.NET 平台可以嵌入动态语言,比如:Lisp、Python、 Ruby 等。 A.30.

    1.6K60

    python 进程间通信(四) -- 共享内存与服务器进程

    引言 此前几篇文章中,我们介绍了 python 进程间通信一系列方案: python 进程间通信(一) — 信号基本使用 python 进程间通信(二) — 定时信号 SIGALRM python...共享内存 共享内存是进程间共享数据最简单方式,python 中有两个方法来创建共享数据对象,分别是: Value(typecode_or_type, *args, lock=True) — 开辟共享内存空间存储值类型...Array(typecode_or_type, size_or_initializer, *, lock=True) — 开辟共享内存空间存储数组类型 对于 Value 对象,我们需要通过他 value...3.1. typecode_or_type 参数 typecode_or_type 既可以是一个描述类型字符串,也可以是一个ctypes 包中定义枚举。...下表列出了可以选取取值: typecode_or_type 参数取值 ctypes 枚举 字符串 说明 py_object ‘O’ python 对象 c_short ‘h’ 系统中 short 类型

    4.4K20
    领券