对Python的zip函数妙用,旋转矩阵详解
作者:Yulinghu 时间:2023-06-09 12:42:45
Python的zip函数
示例1:
x = [1, 2, 3]
y = [4, 5, 6]
z = [7, 8, 9]
xyz = zip(x, y, z)
print xyz
运行的结果是:
[(1, 4, 7), (2, 5, 8), (3, 6, 9)]
从这个结果可以看出zip函数的基本运作方式。
示例2:
x = [1, 2, 3]
y = [4, 5, 6]
z = [7, 8, 9]
xyz = zip(x, y, z)
u = zip(*xyz)
print u
运行的结果是:
[(1, 2, 3), (4, 5, 6), (7, 8, 9)]
一般认为这是一个unzip的过程,它的运行机制是这样的:
在运行zip(*xyz)之前,xyz的值是:[(1, 4, 7), (2, 5, 8), (3, 6, 9)]
那么,zip(*xyz) 等价于 zip((1, 4, 7), (2, 5, 8), (3, 6, 9))
所以,运行结果是:[(1, 2, 3), (4, 5, 6), (7, 8, 9)]
注:在函数调用中使用*list/tuple的方式表示将list/tuple分开,作为位置参数传递给对应函数(前提是对应函数支持不定个数的位置参数)
class Solution(object):
def spiralOrder(self, matrix):
"""
:type matrix: List[List[int]]
:rtype: List[int]
"""
return matrix and list(matrix.pop(0)) + self.spiralOrder(zip(*matrix)[::-1])
obj = Solution()
print obj.spiralOrder([ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ]])
Your return [1,2,3,6,9,8,7,4,5].
来源:https://blog.csdn.net/u010457943/article/details/77369806
标签:Python,zip,矩阵
0
投稿
猜你喜欢
WPF自定义搜索框代码分享
2023-07-18 23:31:04
利用Python判断你的密码难度等级
2021-04-10 20:46:08
Python学习笔记之Break和Continue用法分析
2023-02-12 04:55:32
使用Python横向合并excel文件的实例
2023-09-19 21:20:18
Javascript怎样使用SessionStorage和LocalStorage
2023-09-01 03:49:49
PHP变量作用域(全局变量&局部变量)&global&static关键字用法实例分析
2023-11-23 11:42:05
网页中空格的烦恼
2011-04-28 09:26:00
python 时间戳与格式化时间的转化实现代码
2021-07-06 10:14:47
微软补丁KB967723造成MySQL频繁无法连接
2009-11-03 14:28:00
Python3利用Dlib19.7实现摄像头人脸识别的方法
2022-08-08 06:41:22
用1行Python代码识别身份证信息实例
2022-04-28 12:57:27
Python实现完全数的示例详解
2021-11-21 20:09:30
手机验证设计感悟
2011-01-20 19:55:00
pandas值替换方法
2021-05-31 20:22:38
详解MySQL数据库中Show命令的用法
2008-11-27 16:04:00
DTS构建组件及其如何完成数据转换服务
2009-01-20 15:37:00
Node.js和PHP根据ip获取地理位置的方法
2023-11-14 21:23:13
python 执行终端/控制台命令的例子
2022-11-16 20:41:29
python字符串替换re.sub()实例解析
2022-09-15 00:25:18
好习惯和坏习惯
2009-01-20 12:51:00