侧边栏壁纸
博主头像
落叶人生博主等级

走进秋风,寻找秋天的落叶

  • 累计撰写 130562 篇文章
  • 累计创建 28 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录

python 列表解析及二位数组

2023-12-12 星期二 / 0 评论 / 0 点赞 / 104 阅读 / 1970 字

生成4*4 的矩阵for i in [[x for x in range(1,5)] for x in range(1,5)]:print i[[x for x in range(1,5)] fo

生成4*4 的矩阵for i in [[x for x in range(1,5)] for x in range(1,5)]:print i[[x for x in range(1,5)] for x in range(1,5)]可以理解为[for x in range(1,5)[x for x in range(1,5)] ##=== [1,2,3,4]###=========[[1,2,3,4],[1,2,3,4],[1,2,3,4],[1,2,3,4]]

[[y for y in range(1,5)] for x in range(1,5)] 可以理解为[for x in range(1,5)[y for y in range(1,5)] ] ##========[y,y,y,y]###========[[y,y,y,y],[y,y,y,y],[y,y,y,y],[y,y,y,y]]###========[[1,1,1,1],[2,2,2,2],[3,3,3,3],[4,4,4,4]]执行的过程为参考 http://codingpy.com/article/python-list-comprehensions-explained-visually/

列表解析实现 二维数组及其旋转90度旋转

a = [[x for x in range(1,10)] for x in range(1,10)]def spin(list):    n = len(a)    for j in range(n-1):         ####执行对调 的 次数n-1        for i in range(j,n):       ######  对调元素            a[j][i],a[i][j] = a[i][j],a[j][i]    for x in a:        print x

旋转的代码思路(90度44数组)正方形 画一条对角线(左上角点和右下角点的对角线),90度就是将所有元素以这条对角线为对称轴进行对调第一次对调 就是将正方形的上边元素与左边元素对调第二次对调 将上与左边线向内平行移动(各个元素都在相应的正方形的上与左边上)第三次对调 继续第二次的步骤,如果发现所有的元素都已经在画的正方形上和左边上了,那么对调这行就结束(44 的数组需要三步,55需要4步。。。。会发现nn需要n-1步)在实现4*4数组的元素对象时(所有的对调自己写一遍),我们会发现,对调过程中元素对应的列表的key(a[key1][key2])会根据 执行的次数发生变化.对调的循环 范围为range(j,n)j (range(n-1))为对调执行的次数(这里把执行完一次左上边上所有元素的对调作为一次)即对调执行的次数循环为range(n-1)

广告 广告

评论区