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基于右递归解决八皇后问题的方法
May 25 Python
基于python实现微信模板消息
Dec 21 Python
Using Django with GAE Python 后台抓取多个网站的页面全文
Feb 17 Python
python通过socket实现多个连接并实现ssh功能详解
Nov 08 Python
Python并行分布式框架Celery详解
Oct 15 Python
selenium使用chrome浏览器测试(附chromedriver与chrome的对应关系表)
Nov 29 Python
基于Python实现用户管理系统
Feb 26 Python
python取余运算符知识点详解
Jun 27 Python
Python编程中类与类的关系详解
Aug 08 Python
python元组和字典的内建函数实例详解
Oct 22 Python
基于Python的Jenkins的二次开发操作
May 12 Python
python属于解释型语言么
Jun 15 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实现水仙花数示例分享
2014/04/03 PHP
php页面函数设置超时限制的方法
2014/12/01 PHP
PHP解析url并得到url参数方法总结
2018/10/11 PHP
jquery选择器的选择使用及性能介绍
2013/01/16 Javascript
JQuery为textarea添加maxlength属性并且兼容IE
2013/04/25 Javascript
Flash图片上传组件 swfupload使用指南
2015/03/14 Javascript
使用JavaScript刷新网页的方法
2015/06/04 Javascript
Angularjs material 实现搜索框功能
2016/03/08 Javascript
jQuery隐藏和显示效果实现
2016/04/06 Javascript
通过jquery-ui中的sortable来实现拖拽排序的简单实例
2016/05/24 Javascript
Google 地图事件实例讲解
2016/08/06 Javascript
javascript实现的上下无缝滚动效果
2016/09/19 Javascript
微信小程序实现的3d轮播图效果示例【基于swiper组件】
2018/12/11 Javascript
13 个npm 快速开发技巧(推荐)
2019/07/04 Javascript
Vue程序化的事件监听器(实例方案详解)
2020/01/07 Javascript
EXTJS7实现点击拖拉选择文本
2020/12/17 Javascript
关于python pyqt5安装失败问题的解决方法
2017/08/08 Python
python PyAutoGUI 模拟鼠标键盘操作和截屏功能
2019/08/04 Python
基于Django框架的权限组件rbac实例讲解
2019/08/31 Python
python用TensorFlow做图像识别的实现
2020/04/21 Python
基于jupyter代码无法在pycharm中运行的解决方法
2020/04/21 Python
Python小白不正确的使用类变量实例
2020/05/29 Python
Python实现随机爬山算法
2021/01/29 Python
python实现代码审查自动回复消息
2021/02/01 Python
html5的新增的标签和废除的标签简要概述
2013/02/20 HTML / CSS
HTML5全屏(Fullscreen)API详细介绍
2015/04/24 HTML / CSS
德国街头和运动文化高品质商店:BSTN Store
2017/08/26 全球购物
高档奢华时装在线目的地:FORWARD by elyse walker
2017/10/16 全球购物
美国在线健康和美容市场:Pharmapacks
2018/12/05 全球购物
开普敦通行证:Cape Town Pass
2019/07/18 全球购物
C语言50道问题
2014/10/23 面试题
海飞丝广告词
2014/03/20 职场文书
党委书记个人检查对照材料思想汇报
2014/10/11 职场文书
夫妻忠诚协议范文
2014/11/16 职场文书
安全员岗位职责范本
2015/04/11 职场文书
公司员工手册范本
2015/05/14 职场文书