Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何生成特定对象的python数组_Python_Arrays_Types - Fatal编程技术网

如何生成特定对象的python数组

如何生成特定对象的python数组,python,arrays,types,Python,Arrays,Types,在java中,以下代码定义了预定义类的数组(myCls): 在python中如何实现这一点?我想要一个类型为(myCls)的数组 提前感谢Python是动态键入的。您不需要(事实上也不能)创建只包含单一类型的列表: arr = list() arr = [] 如果您要求它只包含一种类型,那么您必须创建自己的类似列表,重新实现列表方法和\uuuu setitem\uuuuuuuuu()您自己。您只能使用该包创建一种类型的数组,但它不是为存储用户定义的类而设计的 python的方法是只创建一个对象

在java中,以下代码定义了预定义类的数组(
myCls
):

在python中如何实现这一点?我想要一个类型为(
myCls
)的数组


提前感谢

Python是动态键入的。您不需要(事实上也不能)创建只包含单一类型的列表:

arr = list()
arr = []

如果您要求它只包含一种类型,那么您必须创建自己的类似列表,重新实现列表方法和
\uuuu setitem\uuuuuuuuu()
您自己。

您只能使用该包创建一种类型的数组,但它不是为存储用户定义的类而设计的

python的方法是只创建一个对象列表:

a = [myCls() for _ in xrange(10)]
你们可能想看看这个问题

注意:

小心使用此符号,它可能与您的意图不符:

a = [myCls()] * 10

这也将创建一个包含十倍于myCls对象的列表,但它是十倍于同一个对象,而不是十个独立创建的对象。

但您可以创建仅包含整数、双精度等的数组。pythonI中的类型不认为OP关心数组和列表之间的差异。但是,您不能这样做的说法是错误的。不,事实并非如此。列表并不关心它包含什么类。是的,您可以创建一个只接受单一类型的类似列表,也可以使用array.array,但这两种类型都不是列表。@Ignacio:确实,您指定的“不能”语句为false。在python中,您可以创建一个包含单一类型项的列表;您不能强制列表项为单一类型。重复:
a = [myCls()] * 10