Python:Array v.List

tkb*_*kbx 29 python arrays random list

可能重复:
Python列表与数组 - 何时使用?

我正在使用Python开展一些项目,我有几个问题:

  1. 数组和列表之间有什么区别?
  2. 如果问题1不明显,我应该使用哪个?
  3. 你如何使用首选的?(创建数组/列表,添加项目,删除项目,选择随机项目)

Mat*_*ock 39

除非您需要C数组库中的某些非常具体的功能,否则请使用列表.

python确实有三个原始数据结构

tuple = ('a','b','c')
list = ['a','b','c']
dict = {'a':1, 'b': true, 'c': "name"}

list.append('d') #will add 'd' to the list
list[0] #will get the first item 'a'

list.insert(i, x) # Insert an item at a given position. The first argument is the index of the element before which to insert, so a.insert(0, x) inserts at the front of the list, and a.insert(len(a), x) is equivalent to a.append(x).    

list.pop(2) # will remove items by position (index), remove the 3rd item
list.remove(x) # Remove the first item from the list whose value is x.

list.index(x) # Return the index in the list of the first item whose value is x. It is an error if there is no such item.

list.count(x) # Return the number of times x appears in the list.

list.sort(cmp=None, key=None, reverse=False) # Sort the items of the list in place (the arguments can be used for sort customization, see sorted() for their explanation).

list.reverse() # Reverse the elements of the list, in place.
Run Code Online (Sandbox Code Playgroud)

有关数据结构的更多信息,请访问:http: //docs.python.org/tutorial/datastructures.html

  • 别忘了套.. (10认同)

Don*_*ner 14

这里没什么具体的,这个答案有点主观......

一般来说,我觉得你应该使用一个列表只是因为它在语法中受支持并且在其他库中使用得更广泛等.

如果您知道"列表"中的所有内容都属于同一类型并且您希望更紧凑地存储数据,则应使用数组.