精华内容
下载资源
问答
  • 二维 List列表转换(转置) 方法一 zip() def test(): a = [[1, 2, 3], [4, 5, 6]] b = tuple(zip(*a)) c = list(zip(*a)) d = list(map(list, zip(*a))) print(b) # ((1, 4), (2, 5), (3, 6)) ...

    二维 List列表转换(转置)

    方法一 zip()

    def test():
        a = [[1, 2, 3],
             [4, 5, 6]]
    
        b = tuple(zip(*a))
        c = list(zip(*a))
        d = list(map(list, zip(*a)))
        print(b)  # ((1, 4), (2, 5), (3, 6))
        print(c)  # [(1, 4), (2, 5), (3, 6)]
        print(d)  # [[1, 4], [2, 5], [3, 6]]
    

    方法二 numpy

    pass
    

    二维List转一维

    def test():
        a = [[1, 2, 3],
             [4, 5, 6]]
        b = [i for item in a for i in item]
        print(b)
    
    def test():
        from functools import reduce
        a = [[1, 2, 3],
             [4, 5, 6]]
        b = reduce(lambda x, y: x + y, a)
        print(b)  # [1, 2, 3, 4, 5, 6]
    
    def test():
        from itertools import chain
        a = [[1, 2, 3],
             [4, 5, 6]]
        b = list(chain.from_iterable(a))
        print(b)  # [1, 2, 3, 4, 5, 6]
    
    def test():
        from tkinter import _flatten
        a = [[1, 2, 3],
             [4, 5, 6]]
        b = list(_flatten(a))
        print(b)  # [1, 2, 3, 4, 5, 6]
    
    展开全文
  • python二维list之巨坑

    2019-09-21 08:05:34
    二维list若用 [[0] * 5] * 5 这样的方式初始化,则指定元素赋值也会造成所有行的该列也被赋值,与预期不符合。 因此建议,全用[[0] * 5 for _ in range(5)] 这样的方式来初始化。 >>> a = [[0] * 5] * 5 &...

    二维list若用 [[0] * 5] * 5 这样的方式初始化,则指定元素赋值也会造成所有行的该列也被赋值,与预期不符合。

    因此建议,全用[[0] * 5 for _ in range(5)] 这样的方式来初始化。

    >>> a = [[0] * 5] * 5
    >>> a
    [[0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]
    >>> b = [[0] * 5 for _ in range(5)]
    >>> b
    [[0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]
    >>> a == b
    True
    >>> a[0][1] = 1
    >>> a
    [[0, 1, 0, 0, 0], [0, 1, 0, 0, 0], [0, 1, 0, 0, 0], [0, 1, 0, 0, 0], [0, 1, 0, 0, 0]]
    >>> b[0][1] = 1
    >>> b
    [[0, 1, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]

    转载于:https://www.cnblogs.com/xrszff/p/11493666.html

    展开全文
  • python二维list的初始化

    千次阅读 2018-09-27 10:57:29
    原文:...python初始化list列表(1、2) 1.初始化递增的listlist1 = range(10) #print list1 #[0,1,2,...,9] 2.初始化每项为0的一数组: list2 = [0] * 5 #print list2 #[0,0,0,0,0] ...

    原文:https://www.cnblogs.com/zqifa/p/python-list.html

    python初始化list列表(1维、2维)

    1.初始化递增的list:

    list1 = range(10)
    #print list1
    #[0,1,2,...,9]

    2.初始化每项为0的一维数组:

    list2 = [0] * 5
    #print list2
    #[0,0,0,0,0]


    3.初始化固定值的一维数组:

    initVal = 1
    listLen = 5
    list3 = [ initVal for i in range(5)]
    #print list3
    #[1,1,1,1,1]
    list4 = [initVal] * listLen
    #print list4
    #[1,1,1,1,1]

    4.初始化一个5x6每项为0(固定值)的数组(推荐使用):

    multilist = [[0 for col in range(5)] for row in range(6)]

    5.初始化一个5x6每项为0(固定值)的数组

    multilist = [[0] * 5 for row in range(3)]

     

    看到了以上的方法,那初始化一个二维数组时,是否可以这样做呢:
    multi = [[0] * 5] * 3

    其实,这样做是不对的,因为[0] * 5是一个一维数组的对象,* 3的话只是把对象的引用复制了3次,比如,我修改multi[0][0]:
    multi = [[0] * 5] * 3
    multi[0][0] = 'Hello'
    print multi

    输出的结果将是:
    [['Hello', 0, 0, 0, 0], ['Hello', 0, 0, 0, 0], ['Hello', 0, 0,0, 0]]
    我们修改了multi[0][0],却把我们的multi[1][0],multi[2][0]也修改了。这不是我们想要的结果。

    但是如下写法是对的:
    multilist = [[0] * 5 for row in range(3)]
    multilist[0][0] = 'Hello'
    print multilist
    我们看输出结果:
    [['Hello', 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]
    恩,没问题。但是,由于使用 * 的方法比较容易引起混淆导致Bug,所以还是推荐使用上面方法4,即:

    multilist = [[0 for col in range(5)] for row in range(6)]

    展开全文
  • #截取除了第一列的数据 data = [tmp[1:] for tmp in data ]
  • python 二维list取列

    千次阅读 2019-01-24 15:39:00
    b = [i[0] for i in a] # 从a中的每一行取第一个元素。   转载于:https://www.cnblogs.com/qingyuanjushi/p/10314839.html
    b = [i[0] for i in a] # 从a中的每一行取第一个元素。
    

      

    转载于:https://www.cnblogs.com/qingyuanjushi/p/10314839.html

    展开全文
  • python中将二维list转成np.array数组 import numpy as np a = [[1,2,3],[3,4,5],[5,6,7]] b = np.array(a) print('b.shape: {}'.format(b.shape)) print(b) 得到的结果是: 错误操作: 当你的a变成了下面这个...
  • python二维list的声明

    千次阅读 2013-07-28 10:51:26
    关于python二维数组的声明 声明大小为n的一维list的方法可以是[0] * n 那么以此类推,是不是[[0] * n] * n就可以声明二维数组了呢。 答案是否定的。 因为 [] * n和 Java的clone() 函数是一样的
  • import numpy as np C = [] C.append([1,2]) C.append([1,2,3,4]) C.append([1,2]) C.append([1,5,3,6,9]) m = [] n = [] temp = [] res = [] for x in C: m.append(len(x)) n.append(len(x)) ...print(res)
  • 逆时针旋转矩阵:先转置,再上下翻转。 顺时针旋转矩阵:先上下翻转...b = list(map(list, zip(*a)))[::-1] ’‘’ zip(*a)求出来矩阵旋转,但是这是一个元组, ((3, 6, 9), (2, 5, 8), (1, 4, 7))通过map...
  • python二维list取行或列元素

    千次阅读 2019-11-15 14:06:15
    a=[[1,2,3], [4,5,6]] b = [i[0] for i in a] [1, 4]
  • 因为python的numpy库可以按行进行乱序所以我们的思路是,先把二维list转置,然后在按行乱序,最后再转置,这样就得到我们的结果。 import numpy as np labels=[[9,1,3,5], [4,5,6,8], [3,4,5,7], [9,3,2,6]] ...
  • python 二维数组(二维list)创建的坑

    千次阅读 2018-10-08 17:01:55
    python 二维数组(二维list)创建的坑 快速创建一维度list ,并修改 >> > l = [ 0 ] * 3 >> > l [ 0 , 0 , 0 ] >> > l [ 0 ] = 1 >> > l [ 1 , 0 , 0 ] >> > 快速创建二维度list ,并...
  • Python 一维列表 (list) 转换为二维列表 (list) 1. sample 1 #!/usr/bin/python3 # -*- coding: utf-8 -*- """ Yongqiang Cheng """ polylines_list = [1920, 1080, 1280, 720] interval = 2 polyline_set = [] ...
  • 由此,当为了保存一个简单的[1,2,3]时,需要3个指针和3个整数对象用list来表示二维数组时,最外层的list中每个元素为一维数组,即a=[[1,2,3],[4,5,6],[7,8,9]]>>a[[1,2,3],[4,5,6],[7,8,9]]2. numpy.array可以专门...
  • python | 二维list转置

    2021-03-07 21:11:52
    在某些情况下,需要对二维list转置的时候,不能用numpy大法,也没有直接转置的函数。感谢博客 确定如下方法 ???? a = [[1, 2, 3],[4, 5, 6]] b = tuple(zip(*a)) c = list(zip(*a)) d = list(map(list, zip(*a))) ...
  • Python 二维列表list展平为一维

    千次阅读 2019-04-15 19:39:04
    文章目录 问题描述 解决方案 完全展平 参考文献 问题描述 二维列表list展平为一维 解决方案 结合operator和functools模块 import operator import functools a = [[1, 2, 3], [4, [5, 6]]] a = functools.reduce...
  • Python初始化一个m * n的二维list: list = [[0] * m for _ in range(n)] 不能直接用: b = [[0] * 5] * 5 因为这样相当于把[0]*5这个一维列表复制了5次,因此更改[0]*5中的任意一个元素,都会同时修改其他四...
  • python二维list转为一维

    千次阅读 2019-08-07 16:26:56
    参考这里 ...document = [[ ..],[...],[....]] # 二维数组 from tkinter import _flatten print(list(_flatten(document))) from itertools import chain list(chain.from_iterable(document)) ...
  • python二维list赋值

    2020-12-30 23:47:54
    ```python nums = [] for row in range(0, 5): nums.append([]) for column in range(0, 3): nums[row].append(3) print(nums)

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,143
精华内容 457
关键字:

python二维list

python 订阅