如何在 python3 中声明数组
How to declare arrays in python3
我想在 python3 中声明一个数组。我试过了,但出现错误
Python 3.6.7 (default, Oct 22 2018, 11:32:17)
[GCC 8.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> ip_pb=[]
>>> ip_pb[0]="0111111100000000000000011110001"
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: list assignment index out of range
>>>
之后,我这样做了,它正在工作
>>> ip_pb=[""]
>>> ip_pb[0]="0111111100000000000000011110001"
>>> print(ip_pb)
['0111111100000000000000011110001']
但是,我正在寻找另一种方法。如果我们不知道数组中有多少个值,我们就不能在上面的方法中声明数组。
根据您的最后一行(您不知道数组中有多少个元素),您想创建一个空数组,然后使用 append()
函数向其中添加值。
您在问题中提供的代码的修改版本:
ip_pb = []
ip_pb.append("0111111100000000000000011110001")
print(ip_pb)
如果你想以这种方式使用,你应该初始化你的数组:
>>> ip_pb = [None] * 5
>>> ip_pb
[None, None, None, None, None]
>>> ip_pb[1] = 3
>>> ip_pb
[None, 3, None, None, None]
- 创建空列表(数组)如
x = []
- 添加任意数量的元素,例如
x.append(25)
、x.append(100)
您不需要事先知道元素的数量,但如果您想知道列表中元素的数量,请使用
print(len(x))
要打印完整列表,请使用
print(x)
分别打印每个元素
for i in x:
print(i)
在Python中,我们通常称其为list
,而不是传统的array
。
Python 中的 list
始终是动态加长的,这意味着它没有固定大小,而不是所谓的 array
.
对于固定大小 array
,我相信 Python 本身有一个标准库,您可以将它与 import array
一起使用,但不幸的是它的数据类型有限。
array
为了简单起见,也许你可以试试这个方法:
def array(fill, n):
return [fill] * n
a = array("", 10)
a[0] = "10010101"
a[9] = "10230123"
a[10] # IndexError
我想在 python3 中声明一个数组。我试过了,但出现错误
Python 3.6.7 (default, Oct 22 2018, 11:32:17)
[GCC 8.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> ip_pb=[]
>>> ip_pb[0]="0111111100000000000000011110001"
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: list assignment index out of range
>>>
之后,我这样做了,它正在工作
>>> ip_pb=[""]
>>> ip_pb[0]="0111111100000000000000011110001"
>>> print(ip_pb)
['0111111100000000000000011110001']
但是,我正在寻找另一种方法。如果我们不知道数组中有多少个值,我们就不能在上面的方法中声明数组。
根据您的最后一行(您不知道数组中有多少个元素),您想创建一个空数组,然后使用 append()
函数向其中添加值。
您在问题中提供的代码的修改版本:
ip_pb = []
ip_pb.append("0111111100000000000000011110001")
print(ip_pb)
如果你想以这种方式使用,你应该初始化你的数组:
>>> ip_pb = [None] * 5
>>> ip_pb
[None, None, None, None, None]
>>> ip_pb[1] = 3
>>> ip_pb
[None, 3, None, None, None]
- 创建空列表(数组)如
x = []
- 添加任意数量的元素,例如
x.append(25)
、x.append(100)
您不需要事先知道元素的数量,但如果您想知道列表中元素的数量,请使用
print(len(x))
要打印完整列表,请使用
print(x)
分别打印每个元素
for i in x:
print(i)
在Python中,我们通常称其为list
,而不是传统的array
。
Python 中的 list
始终是动态加长的,这意味着它没有固定大小,而不是所谓的 array
.
对于固定大小 array
,我相信 Python 本身有一个标准库,您可以将它与 import array
一起使用,但不幸的是它的数据类型有限。
array
为了简单起见,也许你可以试试这个方法:
def array(fill, n):
return [fill] * n
a = array("", 10)
a[0] = "10010101"
a[9] = "10230123"
a[10] # IndexError