对Python的zip函数妙用,旋转矩阵详解

 更新时间:2018年12月13日 08:40:50   作者:Yulinghu  
今天小编就为大家分享一篇对Python的zip函数妙用,旋转矩阵详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

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].

以上这篇对Python的zip函数妙用,旋转矩阵详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 基于Python实现随机点名系统的示例代码

    基于Python实现随机点名系统的示例代码

    在某些难以抉择得时候,我们经常要用外力来帮助我们做出选择,比如,梁山出征方腊前沙场点兵,挑选先锋的场景。所以本文就来用Python做个随机点名系统吧,需要的可以参考一下
    2023-04-04
  • Python Web框架之Django框架文件上传功能详解

    Python Web框架之Django框架文件上传功能详解

    这篇文章主要介绍了Python Web框架之Django框架文件上传功能,结合实例形式详细分析了Django框架form表单基于ajax的文件上传功能详细操作技巧,需要的朋友可以参考下
    2019-08-08
  • 如何用python整理附件

    如何用python整理附件

    本篇文章给大家整理了关于如何用python整理附件的相关知识点,学习python的朋友可以跟着测试下。
    2018-05-05
  • 在Mac OS上使用mod_wsgi连接Python与Apache服务器

    在Mac OS上使用mod_wsgi连接Python与Apache服务器

    这篇文章主要介绍了在Mac OS上使用mod_wsgi连接Python与Apache服务器的方法,同时文中还介绍了使用Python的Django框架时mod_wsgi连接方式下可能遇到的问题的一般解决方法,需要的朋友可以参考下
    2015-12-12
  • 用Python实现一个简单的用户系统

    用Python实现一个简单的用户系统

    大家好,本篇文章主要讲的是用Python实现一个简单的用户系统,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2022-01-01
  • python自定义模块使用.pth文件实现重用方式

    python自定义模块使用.pth文件实现重用方式

    这篇文章主要介绍了python自定义模块使用.pth文件实现重用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • Python中文件路径常用操作总结

    Python中文件路径常用操作总结

    这篇文章主要为大家详细介绍了Python中文件路径常用操作的相关知识,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的小伙伴可以学习一下
    2023-11-11
  • 一文详解python多继承的3C算法

    一文详解python多继承的3C算法

    有很多地方都说python多继承的继承顺序,是按照深度遍历的方式,其实python多继承顺序的算法,不是严格意义上的深度遍历,而是基于深度遍历基础上优化出一种叫3C算法,本文将给大家详细的介绍一下python多继承的3C算法,需要的朋友可以参考下
    2024-07-07
  • 使用PyOpenGL绘制三维坐标系实例

    使用PyOpenGL绘制三维坐标系实例

    今天小编就为大家分享一篇使用PyOpenGL绘制三维坐标系实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • jupyter lab的目录调整及设置默认浏览器为chrome的方法

    jupyter lab的目录调整及设置默认浏览器为chrome的方法

    这篇文章主要介绍了jupyter lab的目录调整及设置默认浏览器为chrome的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04

最新评论