• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >python > 一些Python中的二维数组的操作方法

一些Python中的二维数组的操作方法

作者:goldensun 字体:[增加 减小] 来源:互联网

goldensun 通过本文主要向大家介绍了python 数组操作,python 二维数组操作,python定义二维数组,python 数组,python 二维数组等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

需要在程序中使用二维数组,网上找到一种这样的用法:
 

#创建一个宽度为3,高度为4的数组
#[[0,0,0], 
# [0,0,0],
# [0,0,0],
# [0,0,0]]
myList = [[0] * 3] * 4
</div>

但是当操作myList[0][1] = 1时,发现整个第二列都被赋值,变成

[[0,1,0],

[0,1,0],

[0,1,0],

[0,1,0]]

</div>

为什么...一时搞不懂,后面翻阅The Python Standard Library 找到答案

list * n—>n shallow copies of list concatenated, n个list的浅拷贝的连接

例:
 

>>> lists = [[]] * 3
>>> lists
[[], [], []]
>>> lists[0].append(3)
>>> lists
[[3], [3], [3]]
</div>

[[]]是一个含有一个空列表元素的列表,所以[[]]*3表示3个指向这个空列表元素的引用,修改任何

一个元素都会改变整个列表:

所以需要用另外一种方式进行创建多维数组,以免浅拷贝:
 

>>> lists = [[] for i in range(3)]
>>> lists[0].append(3)
>>> lists[1].append(5)
>>> lists[2].append(7)
>>> lists
[[3], [5], [7]]
</div>

之前的二维数组创建方式为:
 

myList = [([0] * 3) for i in range(4)]
</div>

</div>

您可能想查找下面的文章:

  • Python生成随机数组的方法小结
  • Python实现二维有序数组查找的方法
  • Python数组遍历的简单实现方法小结
  • Python实现二维有序数组查找的方法
  • Python数组遍历的简单实现方法小结
  • python数组过滤实现方法
  • python实现合并两个数组的方法
  • 一些Python中的二维数组的操作方法
  • 一些Python中的二维数组的操作方法
  • python常规方法实现数组的全排列

相关文章

  • 浅谈Python单向链表的实现
  • Python判断直线和矩形是否相交的方法
  • 使用Python操作Elasticsearch数据索引的教程
  • Python使用Srapy框架爬虫模拟登陆并抓取知乎内容
  • python使用htmllib分析网页内容的方法
  • python抓取网页时字符集转换问题处理方案分享
  • 十条建议帮你提高Python编程效率
  • Python函数可变参数定义及其参数传递方式实例详解
  • Python实现基本线性数据结构
  • python网页请求urllib2模块简单封装代码

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • Python Socket编程入门教程
    • 简单介绍Python2.x版本中的cmp()方法的使用
    • Python异常处理总结
    • json跨域调用python的方法详解
    • python数据结构树和二叉树简介
    • 用ReactJS和Python的Flask框架编写留言板的代码示例
    • 使用Python脚本将文字转换为图片的实例分享
    • 简介Django框架中可使用的各类缓存
    • python从入门到精通(DAY 2)
    • 在Python的Django框架中获取单个对象数据的简单方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有