Python 数组

发布时间: 更新时间: 总字数:740 阅读时间:2m 作者: 分享 复制网址

python 数据介绍

介绍

列表 []

说明:

  • 索引从左到右,默认0开始的,最大范围是数组长度 -1
  • 索引从右到左,默认-1开始的,最大范围是数组的开头
  • 常见操作:
    • 访问索引:arr[index]
      • 超出索引报错:IndexError: string index out of range
    • 追加元素:arr.append(<x>)
    • 插入元素:arr.insert(index, <x>)
      • 如果位置大于列表当然的长度,则后append 的结果是一样的,添加到最后。列表是从0 开始计数的,即第1个元素的索引是0
    • 扩充列表:arr.extend(<x>),其中 <x> 为可迭代序列
    • 列表后删除元素:arr.pop() arr.pop(2) 按照索引删除元素,默认为最后一个
    • 搜索删除元素:arr.remove(<x>)
      • 从0开始索引,直到匹配到相等的第一个元素,删掉该元素,只会删除一个
    • 修改元素:arr[index] = <new-value>
    • 获取指定元素的索引:arr.index(元素,开始,结束) 返回匹配到的第一个元素的索引
    • 反转数组:arr.reverse()
    • arr.sort() 方法用于在原来位置对列表进行排序,注意内存是不变的

使用切片获取新地址

>>> x= [4, 6, 2, 1, 7, 9]
>>> x
[4, 6, 2, 1, 7, 9]
>>> id(x)
43267816
>>> y = x
>>> id(y)
43267816
>>> y = x[:]
>>> y
[4, 6, 2, 1, 7, 9]
>>> id(y)
43246656

示例

fruits = ['apple', 'banana', 'orange']
big_fruits = [list(fruits) for i in range(3)]

[i for i in range(10) if i%2 == 0]
# [0, 2, 4, 6, 8]

b =[1,3,4,5,'iloveyou']
B.append(6);

>>> x
[1, 2, 1]
>>> del x[2]
>>> x
[1, 2]
>>> x[1:]
SyntaxError: invalid syntax
>>> x[1:]
[2]
>>> x
[1, 2]
>>> x[1:1] = [2, 3, 4]
>>> x
[1, 2, 3, 4, 2]
>>> x[2:] = []
>>> x
[1, 2]
>>> x = [[1,2], 1, 1, [2, 1, [1, 2]]]
>>> x
[[1, 2], 1, 1, [2, 1, [1, 2]]]
>>> x.count(1)
2
>>> x.count([1, 2])
1
>>> x.append(3)
>>> x
[[1, 2], 1, 1, [2, 1, [1, 2]], 3]
>>>
>>> a= [1, 2, 3]
>>> b = [3, 4, 5]
>>> a.append(b)
>>> a
[1, 2, 3, [3, 4, 5]]
>>> b
[3, 4, 5]
>>> id(a)
43400688
>>> a = [1, 2, 3]
>>> id(a)
43428440
>>> a.append(b)
>>> id(a)
43428440
>>> a
[1, 2, 3, [3, 4, 5]]
>>> a.extend(b)
>>> a
[1, 2, 3, [3, 4, 5], 3, 4, 5]
>>> a+b
[1, 2, 3, [3, 4, 5], 3, 4, 5, 3, 4, 5]
>>> a
[1, 2, 3, [3, 4, 5], 3, 4, 5]
>>> b
[3, 4, 5]
>>>
>>> a = a + b
>>> a
[1, 2, 3, [3, 4, 5], 3, 4, 5, 3, 4, 5]
>>> b
[3, 4, 5]
>>>
最新评论
加载中...
Home Archives Categories Tags Statistics