Python的二维数组

Python一维数组初始化:


>>> list=[]
>>> type(list)
<type ‘list‘>
>>> list
[]

Python二维数组初始化:


>>> lists = [[]] * 3
>>> lists
[[], [], []]
>>> lists[0].append(3)
>>> lists
[[3], [3], [3]]

"[[]]" 是一个包含了空list的list,3个“[[]]”指向了同一个空‘lists’。修改其中一个,会导致其他的元素都会被修改。

另外一种初始化方式:


>>> lists = [[] for i in range(3)]
>>> lists[0].append(3)
>>> lists[1].append(5)
>>> lists[2].append(7)
>>> lists
[[3], [5], [7]]

或者:


>>> multilist = [[0 for col in range(3)] for row in range(3)]
>>> multilist
[[0, 0, 0], [0, 0, 0], [0, 0, 0]]

动态创建和初始化数组:


>>>list=[]
>>>multilist=[]
>>>for i in range(9):
... list.append(i+1)
>>>list
[1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> for i in range(3):
... multilist.append(list[3*i:3*(i+1)])
>>> multilist
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
>>> multilist[1][1]
5
>>> len(multilist)
3
>>> multilist.append([0 for col in range(4)])
>>> len(multilist)
4
>>> multilist
[[1, 2, 3], [4, 5, 6], [7, 8, 9], [0, 0, 0, 0]]

Python的二维数组,布布扣,bubuko.com

时间: 2024-12-19 01:27:03

Python的二维数组的相关文章

python的二维数组操作

需要在程序中使用二维数组,网上找到一种这样的用法: 1 2 3 4 5 6 #创建一个宽度为3,高度为4的数组 #[[0,0,0], # [0,0,0], # [0,0,0], # [0,0,0]] myList = [[0] * 3] * 4 但是当操作myList[0][1] = 1时,发现整个第二列都被赋值,变成 [[0,1,0], [0,1,0], [0,1,0], [0,1,0]] 为什么...一时搞不懂,后面翻阅The Python Standard Library 找到答案 lis

python 按二维数组的某行或列排序 (numpy lexsort)

lexsort支持对数组按指定行或列的顺序排序:是间接排序,lexsort不修改原数组,返回索引. 默认按最后一行元素有小到大排序, 返回最后一行元素排序后索引所在位置. 设数组a, 返回的索引ind, a可以是1维或2维数组,ind返回的是一维数组 对于一维数组, a[ind]就是排序后的数组. 对于二维数组下面会详细举例. import numpy as np >>> a array([[ 2,  7,  4,  2], [35,  9,  1,  5], [22, 12,  3, 

python 一个二维数组和一个整数,判断数组中是否含有该整数

在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序. 请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. def find(target, array): i = 0 j = len(array[0]) - 1 while i < len(array) and j >= 0: base = array[i][j] if target == base: return True elif target >

python 创建二维数组的方法

废话不多说,直接上代码: #coding=utf-8 def two_di_demo1(): a=[] for i in range(10): a.append([]) for j in range(10): a[i].append(0) print(a) def two_di_demo2(): a=[] for i in range(10): a.append([]) for j in range(10): a[i].append(0) print(a) b = [[0] * 10] * 10

python创建二维数组

1 c=[[0]*3 for i in range(3)] 2 3 c=[[0 for i in range(3)] for i in range(3)]

python生成二维数组

Array= [[0 for i in range(15)] for i in range(15)]

剑指offer python版 二维数组的查找

def find_integer(matrix, num): """ :param matrix: [[]] :param num: int :return: bool """ if not matrix: return False rows, cols = len(matrix), len(matrix[0]) row, col = rows - 1, 0 while row >= 0 and col <= cols - 1: if

在python中定义二维数组

发表于 http://liamchzh.0fees.net/?p=234&i=1 一次偶然的机会,发现python中list非常有意思. 先看一段代码 [py]array = [0, 0, 0]matrix = [array*3]print matrix## [[0,0,0,0,0,0,0,0,0]][/py] 这段代码其实没有新建一个二维数组 再看一段代码 [py]array = [0, 0, 0]matrix = [array] * 3print matrix## [[0, 0, 0], [

python二维数组

今天..好多不会的,慢慢补充 1.python的二维数组初始化 s = [[0 for i in range(3)]for i in range(3)] 这样就初始了一个3*3的二维数组 = [[0 for in range(col_numbers)] for i in range(rows_numbers)] 2. with open('test.txt','rb') as f: s = f.readline() s的结尾是带着\r\n的 所以使用 s.strip('\r\n') strip参