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 相关文章推荐
Python开发常用的一些开源Package分享
Feb 14 Python
python使用xlrd模块读写Excel文件的方法
May 06 Python
基于python的Tkinter编写登陆注册界面
Jun 30 Python
Django读取Mysql数据并显示在前端的实例
May 27 Python
Tensorflow加载预训练模型和保存模型的实例
Jul 27 Python
使用tensorflow实现线性回归
Sep 08 Python
Django框架orM与自定义SQL语句混合事务控制操作
Jun 27 Python
微信公众号token验证失败解决方案
Jul 22 Python
Python 读取WAV音频文件 画频谱的实例
Mar 14 Python
Python计算指定日期是今年的第几天(三种方法)
Mar 26 Python
python 引用传递和值传递详解(实参,形参)
Jun 05 Python
python字典的值可以修改吗
Jun 29 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
Discuz! 5.0.0论坛程序中加入一段js代码,让会员点击下载附件前自动弹出提示窗口
2007/04/18 PHP
php遍历所有文件及文件夹的方法深入解析
2013/06/08 PHP
yii2中dropDownList实现二级和三级联动写法
2017/04/26 PHP
让IE8支持DOM 2(不用框架!)
2009/12/31 Javascript
jQeury淡入淡出需要注意的问题
2010/09/08 Javascript
游览器中javascript的执行过程(图文)
2012/05/20 Javascript
jquery实现checkbox全选全不选的简单实例
2013/12/31 Javascript
解决jquery操作checkbox火狐下第二次无法勾选问题
2014/02/10 Javascript
Document.location.href和.replace的区别示例介绍
2014/03/04 Javascript
详解JavaScript中常用的函数类型
2015/11/18 Javascript
jQuery自定义滚动条完整实例
2016/01/08 Javascript
JavaScript编程学习技巧汇总
2016/02/21 Javascript
NodeJS整合银联网关支付(DEMO)
2016/11/09 NodeJs
jQuery实现checkbox即点即改批量删除及中间遇到的坑
2017/11/11 jQuery
学习LayUI时自研的表单参数校验框架案例分析
2019/07/29 Javascript
微信小程序webview与h5通过postMessage实现实时通讯的实现
2019/08/20 Javascript
electron-vue开发环境内存泄漏问题汇总
2019/10/10 Javascript
微信小程序中weui用法解析
2019/10/21 Javascript
微信小程序监听用户登录事件的实现方法
2019/11/11 Javascript
Python捕捉和模拟鼠标事件的方法
2015/06/03 Python
简单了解Python中的几种函数
2017/11/03 Python
python中将正则过滤的内容输出写入到文件中的实例
2018/10/21 Python
python爬虫简单的添加代理进行访问的实现代码
2019/04/04 Python
Tensorflow模型实现预测或识别单张图片
2019/07/19 Python
Python3 hashlib密码散列算法原理详解
2020/03/30 Python
CSS3实现瀑布流布局与无限加载图片相册的实例代码
2016/12/22 HTML / CSS
canvas学习笔记之2d画布基础的实现
2019/02/21 HTML / CSS
美国电视购物HSN官网:HSN
2016/09/07 全球购物
Perry Ellis官网:美国男士品味服装
2016/12/09 全球购物
怎样比较两个类型为String的字符串
2016/08/17 面试题
秘书岗位职责
2013/11/18 职场文书
学习走群众路线心得体会
2014/11/05 职场文书
《棉鞋里的阳光》教学反思
2016/02/20 职场文书
《海上日出》教学反思
2016/02/23 职场文书
linux下安装redis图文详细步骤
2021/12/04 Redis
pytorch中的torch.nn.Conv2d()函数图文详解
2022/02/28 Python