文档章节

python 列表解析及二位数组

 雪地花露
发布于 2016/11/08 17:02
字数 507
阅读 39
收藏 1

生成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)

© 著作权归作者所有

共有 人打赏支持
上一篇: python time 模块
下一篇: python 连接 rabbitmq
粉丝 6
博文 65
码字总数 35417
作品 0
朝阳
系统管理员
私信 提问
Python3基础之学习笔记(三)-模块-pyc-数据类型-列表-元组-字典-集合-字符串

文章目录 1 模块 2 pyc 3 数据类型 4 三元运算符 5 Bytes 6 列表 7 元组 8 字典 9 集合 10 字符串 1 模块 1.1 sys模块 sys.path存储模块搜索路径,当导入模块时,先在当前目录下查找模块,如...

GoldenKitten
01/15
0
0
Python基础总结成千行代码,让Python入门更简单!

只要学会这千行代码,不管你是零基础还是弱基础或是没有接触过编程,都可以快速入门Python!当时我就不信邪啊,等我看完之后,即使作为一个Python老鸟了,还是领会到了很多教授他的独特见解!...

糖宝lsh
2018/09/10
0
0
如何用十分钟学会函数式 Python?

函数式编程到底是什么?本文将详解其概念,同时分享怎样在 Python 中使用函数式编程。主要内容包括列表解析式和其他形式的解析式。 函数式模型 在命令式模型中,执行程序的方式是给计算机一系...

CSDN资讯
2018/09/22
0
0
老司机都开火箭了!Cython 助力 Python NLP 实现百倍加速

雷锋网 AI 研习社按:本文的作者是来自 Hugging face 的科学家 Thomas Wolf,他的研究方向包括机器学习、自然语言处理和深度学习。在这篇博客中,他介绍了如何利用 Cython 和 spaCy 让 Pyth...

隔壁王大喵
2018/06/26
0
0
列表--元组--字典--import join

--9-----------Python 列表 list-----------用[]标识----------------------------------------------------------------------------------------------- List(列表) 是 Python 中使用最频......

liapple6
2018/10/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

求推广,德邦快递坑人!!!!

完全没想好怎么来吐槽自己这次苦逼的德邦物流过程了,只好来记一个流水账。 从寄快递开始: 2019年1月15日从 德邦物流 微信小app上下单,截图如下: 可笑的是什么,我预约的是17号上门收件,...

o0无忧亦无怖
20分钟前
0
0
Mac Vim配置

1.升级 vim   我自己 MacBook Pro 的系统还是 10.11 ,其自带的 vim 版本为 7.3 ,我们将其升至最新版: 使用 homebrew : brew install vim --with-lua --with-override-system-vim 这将下...

Pasenger
32分钟前
0
0
vmware安装Ubuntu上不了网?上网了安装不了net-tools,无法执行ifconfig?

1.重新设置网络适配器还是不行,如下指定nat 2.还需要指定共享网络,我是在无线环境下 3.无法执行ifconfig https://packages.ubuntu.com/bionic/net-tools到这个网站下载net-tools的deb文件...

noob_chr
58分钟前
1
0
解决SVN:E210007无法协商认证机制

svn:E210007 svn: Cannot negotiate authentication mechanism 执行下面代码即可 sudo yum install cyrus-sasl cyrus-sasl-plain cyrus-sasl-ldap...

临江仙卜算子
59分钟前
1
0
java8的时间和`Date`的对比

java8的时间和Date的对比 java8提供了新的时间接口。相对Date,Calendar,个人感觉最大的好处是对时间操作的学习成本很低,比Calendar低。 1. LocalDate,LocalTime,LocalDateTime LocalDate 代...

北风刮的不认真了
59分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部