Python数组定义方法


Posted in Python onApril 13, 2016

本文实例讲述了Python数组定义方法。分享给大家供大家参考,具体如下:

Python中没有数组的数据结构,但列表很像数组,如:

a=[0,1,2]

这时:a[0]=0, a[1]=1, a[[2]=2,但引出一个问题,即如果数组a想定义为0到999怎么办?这时可能通过a = range(0, 1000)实现。或省略为a = range(1000).如果想定义1000长度的a,初始值全为0,则 a = [0 for x in range(0, 1000)]

下面是二维数组的定义:

直接定义:

a=[[1,1],[1,1]]

这里定义了一个2*2的,且初始为0的二维数组。

间接定义:

a=[[0 for x in range(10)] for y in range(10)]

这里定义了10*10初始为0的二维数组。

还有更简单的字义二维数组的方法:

b = [[0]*10]*10

定义10*10初始为0的二维数组。

与a=[[0 for x in range(10)] for y in range(10)]比较:print a==b的结果为True。

但用b的定义方法代替a后,以前的可以正常运行的程序也出错了,经过仔细分析得出区别:

a[0][0]=1时,只有a[0][0]为1,其他全为0。

b[0][0]=1时,a[0][0],a[1][0],只到a[9,0]全部为1。

由此得到大数组中的10个小的一维数据全是一个相同的引用,即指向同一地址。
故 b = [[0]*10]*10并不符合我们常规意义上的二维数组。

同时经过试验:c=[0]*10的定义与c=[0 for x in range(10)]有同样的效果,而没有上面相同引用的问题,估计数组c的定义时是值类型相乘,而前面b的用类型的相乘,因为一维数组是一个引用(借用C#中的值类型和引用类型,不知是否合适)。

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
利用soaplib搭建webservice详细步骤和实例代码
Nov 20 Python
在Python3中初学者应会的一些基本的提升效率的小技巧
Mar 31 Python
Python线程的两种编程方式
Apr 14 Python
python实现向ppt文件里插入新幻灯片页面的方法
Apr 28 Python
从局部变量和全局变量开始全面解析Python中变量的作用域
Jun 16 Python
Python解决N阶台阶走法问题的方法分析
Dec 28 Python
Python数据分析之获取双色球历史信息的方法示例
Feb 03 Python
python web自制框架之接受url传递过来的参数实例
Dec 17 Python
keras实现基于孪生网络的图片相似度计算方式
Jun 11 Python
Python抓包并解析json爬虫的完整实例代码
Nov 03 Python
flask项目集成swagger的方法
Dec 09 Python
linux中nohup和后台运行进程查看及终止
Jun 24 Python
Python基于select实现的socket服务器
Apr 13 #Python
Python简单实现子网掩码转换的方法
Apr 13 #Python
Python多进程分块读取超大文件的方法
Apr 13 #Python
Python字符串拼接、截取及替换方法总结分析
Apr 13 #Python
Python字符串格式化输出方法分析
Apr 13 #Python
PHP网页抓取之抓取百度贴吧邮箱数据代码分享
Apr 13 #Python
python 实时遍历日志文件
Apr 12 #Python
You might like
php实现的RSS生成类实例
2015/04/23 PHP
php数组函数array_key_exists()小结
2015/12/10 PHP
php通过curl添加cookie伪造登陆抓取数据的方法
2016/04/02 PHP
PHP+Ajax实现无刷新分页实例详解(附demo源码下载)
2016/04/07 PHP
ThinkPHP自定义Redis处理SESSION的实现方法
2016/05/16 PHP
php基于curl重写file_get_contents函数实例
2016/11/08 PHP
漂亮的jquery提示效果(仿腾讯弹出层)
2013/02/05 Javascript
input输入框的自动匹配(原生代码)
2013/03/19 Javascript
超棒的响应式布局jQuery插件Freetile.js
2014/11/17 Javascript
node.js中的url.parse方法使用说明
2014/12/10 Javascript
jQuery实现鼠标滑过点击事件音效试听
2015/08/31 Javascript
基于javascript实现句子翻牌网页版小游戏
2016/03/23 Javascript
Javascript对象字面量的理解
2016/06/22 Javascript
JavaScript职责链模式概述
2016/09/17 Javascript
JavaScript中String对象的方法介绍
2017/01/04 Javascript
JavaScript实现连连看连线算法
2019/01/05 Javascript
vue 实现把路由单独分离出来
2020/08/13 Javascript
Python使用xlrd读取Excel格式文件的方法
2015/03/10 Python
python http接口自动化脚本详解
2018/01/02 Python
Django 内置权限扩展案例详解
2019/03/04 Python
一行python实现树形结构的方法
2019/08/09 Python
Python多线程爬取豆瓣影评API接口
2019/10/22 Python
python中自带的三个装饰器的实现
2019/11/08 Python
python打印n位数“水仙花数”(实例代码)
2019/12/25 Python
Numpy中ndim、shape、dtype、astype的用法详解
2020/06/14 Python
Python 调用C++封装的进一步探索交流
2021/03/04 Python
html5中canvas学习笔记1-画板的尺寸与实际显示尺寸
2013/01/06 HTML / CSS
Sephora丝芙兰菲律宾官方网站:购买化妆品和护肤品
2017/04/05 全球购物
新闻工作者先进事迹
2014/05/26 职场文书
安全生产一岗双责责任书
2014/07/28 职场文书
防邪知识进家庭活动方案
2014/08/26 职场文书
网络工程专业大学生求职信
2014/10/01 职场文书
群众路线教育实践活动个人对照检查材料思想汇报(社区班子)
2014/10/06 职场文书
幼儿园教师师德表现自我评价
2015/03/05 职场文书
宾馆安全管理制度
2015/08/06 职场文书
Django程序的优化技巧
2021/04/29 Python