python面试题之列表声明实例分析


Posted in Python onJuly 08, 2019

本文实例讲述了python面试题之列表声明。分享给大家供大家参考,具体如下:

下面程序输出的结果为?

val = [['a']*2]*2
print val
val[0][1]='b'
print val

答案为:

[['a', 'a'], ['a', 'a']]
[['a', 'b'], ['a', 'b']]

而不是

[['a', 'a'], ['a', 'a']]
[['a', 'b'], ['a', 'a']]

请看下面的例子:

val = ['a']*2  #或者直接声明val = ['a','a']
print val
print id(val)
print id(val[0])
print id(val[1])

输出的结果为

['a', 'a']
39993928
38858384
38858384

可以看到val中的两个'a'是指向的同一个地址:

python面试题之列表声明实例分析

再看下面的代码:

直接声明的话,不会改变后面的'a'

val = [['a','a'],['a','a']]
print val
print id(val)
print id(val[0][0])
print id(val[1][0])
val[0][0] = 'b'
print val
print id(val)
print id(val[0][0])
print id(val[1][0])

结果为:

[['a', 'a'], ['a', 'a']]
39405512
38268560
38268560
[['b', 'a'], ['a', 'a']]
39405512
38390280
38268560

val = [['a','a']]*2
print val
print id(val)
print id(val[0][0])
print id(val[1][0])
val[0][0] = 'b'
print val
print id(val)
print id(val[0][0])
print id(val[1][0])

结果为:

[['a', 'a'], ['a', 'a']]
40388552
39251600
39251600
[['b', 'a'], ['b', 'a']]
40388552
39373320
39373320

更多Python相关内容感兴趣的读者可查看本站专题:《Python列表(list)操作技巧总结》、《Python编码操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

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

Python 相关文章推荐
Python3处理文件中每个词的方法
May 22 Python
Python之父谈Python的未来形式
Jul 01 Python
Python引用类型和值类型的区别与使用解析
Oct 17 Python
Python实现将HTML转换成doc格式文件的方法示例
Nov 20 Python
Python中的异常处理try/except/finally/raise用法分析
Feb 28 Python
django数据关系一对多、多对多模型、自关联的建立
Jul 24 Python
pytorch多进程加速及代码优化方法
Aug 19 Python
python实现字典嵌套列表取值
Dec 16 Python
python飞机大战pygame碰撞检测实现方法分析
Dec 17 Python
kafka监控获取指定topic的消息总量示例
Dec 23 Python
python正则过滤字母、中文、数字及特殊字符方法详解
Feb 11 Python
Python find()、rfind()方法及作用
Dec 24 Python
python 一个figure上显示多个图像的实例
Jul 08 #Python
Python3实现汉语转换为汉语拼音
Jul 08 #Python
python如何爬取网站数据并进行数据可视化
Jul 08 #Python
Django后台admin的使用详解
Jul 08 #Python
Python画图实现同一结点多个柱状图的示例
Jul 07 #Python
python画图把时间作为横坐标的方法
Jul 07 #Python
linux环境中没有网络怎么下载python
Jul 07 #Python
You might like
PHP防注入安全代码
2008/04/09 PHP
ThinkPHP3.1新特性之G方法的使用
2014/06/19 PHP
PHP 抽象方法与抽象类abstract关键字介绍及应用
2014/10/16 PHP
php类自动加载器实现方法
2015/07/28 PHP
tp5框架基于Ajax实现列表无刷新排序功能示例
2020/02/10 PHP
初窥JQuery-Jquery简介 入门了解篇
2010/11/25 Javascript
Underscore.js 的模板功能介绍与应用
2012/12/24 Javascript
jquery显示和隐藏div特效实例
2013/02/27 Javascript
Jquery中LigerUi的弹出编辑框(实现方法)
2013/07/09 Javascript
jQuery表格列宽可拖拽改变且兼容firfox
2014/09/03 Javascript
JavaScript的作用域和块级作用域概念理解
2014/09/21 Javascript
使用C++为node.js写扩展模块
2015/04/22 Javascript
JavaScript中setTimeout的那些事儿
2016/11/14 Javascript
微信小程序-图片、录音、音频播放、音乐播放、视频、文件代码实例
2016/11/22 Javascript
三种方式实现瀑布流布局
2017/02/10 Javascript
基于vuejs实现一个todolist项目
2017/04/11 Javascript
jQuery插件FusionCharts绘制的2D条状图效果【附demo源码】
2017/05/13 jQuery
原生JS与CSS实现软件卸载对话框功能
2019/12/05 Javascript
javascript实现倒计时效果
2020/02/17 Javascript
Python书单 不将就
2017/07/11 Python
Python多层装饰器用法实例分析
2018/02/09 Python
python 字典修改键(key)的几种方法
2018/08/10 Python
python+opencv 读取文件夹下的所有图像并批量保存ROI的方法
2019/01/10 Python
几个解决兼容IE6\7\8不支持html5标签的几个方法
2013/01/07 HTML / CSS
美国时尚假发购物网站:Wigsbuy
2019/04/06 全球购物
莫斯科的韩国化妆品店:Sifo
2019/12/04 全球购物
奥地利婴儿用品和玩具购物网站:baby-markt.at
2020/01/26 全球购物
如何用Java实现列出某个目录下的所有子目录
2015/07/20 面试题
教师自我评价范例
2013/09/24 职场文书
应聘编辑自荐信范文
2014/03/12 职场文书
雷人标语集锦
2014/06/19 职场文书
社区志愿者活动方案
2014/08/18 职场文书
2014年小学重阳节活动策划方案
2014/09/16 职场文书
创业计划书之甜品店
2019/09/18 职场文书
Redis 持久化 RDB 与 AOF的执行过程
2021/11/07 Redis
SpringBoot中使用Redis作为全局锁示例过程
2022/03/24 Java/Android