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黑魔法之编码转换
Jan 25 Python
Python IDLE 错误:IDLE''s subprocess didn''t make connection 的解决方案
Feb 13 Python
python输入错误密码用户锁定实现方法
Nov 27 Python
详解Python中的分组函数groupby和itertools)
Jul 11 Python
pyqt5的QComboBox 使用模板的具体方法
Sep 06 Python
在Python dataframe中出生日期转化为年龄的实现方法
Oct 20 Python
利用python实现对web服务器的目录探测的方法
Feb 26 Python
python爬虫 基于requests模块的get请求实现详解
Aug 20 Python
基于Python新建用户并产生随机密码过程解析
Oct 08 Python
使用keras框架cnn+ctc_loss识别不定长字符图片操作
Jun 29 Python
python中remove函数的踩坑记录
Jan 04 Python
在pycharm中无法import所安装的库解决方案
May 31 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 高级课程笔记 面向对象
2009/06/21 PHP
php实现比较全的数据库操作类
2015/06/18 PHP
利用php + Laravel如何实现部署自动化详解
2017/10/11 PHP
PHP的JSON封装、转变及输出操作示例
2019/09/27 PHP
Laravel服务容器绑定的几种方法总结
2020/06/14 PHP
Javascript实现滑块滑动改变值的实现代码
2013/04/12 Javascript
获取3个数组不重复的值的具体实现
2013/12/30 Javascript
动态的绑定事件addEventListener方法的使用
2014/01/24 Javascript
javascript自动切换焦点控制效果完整实例
2016/02/02 Javascript
JavaScript判断图片是否已经加载完毕的方法汇总
2016/02/05 Javascript
纯JS实现图片验证码功能并兼容IE6-8(推荐)
2017/04/19 Javascript
收藏AngularJS中最重要的核心功能
2017/07/09 Javascript
实例讲解javascript实现异步图片上传方法
2017/12/05 Javascript
从vue源码解析Vue.set()和this.$set()
2018/08/30 Javascript
angular中两种表单的区别(响应式和模板驱动表单)
2018/12/06 Javascript
[00:44]华丽开场!DOTA2勇士令状带来全新对阵画面
2019/05/15 DOTA
Python使用Flask框架同时上传多个文件的方法
2015/03/21 Python
Python基础知识_浅谈用户交互
2017/05/31 Python
Python矩阵常见运算操作实例总结
2017/09/29 Python
python模块之paramiko实例代码
2018/01/31 Python
Python对HTML转义字符进行反转义的实现方法
2019/04/28 Python
Pygame的程序开始示例代码
2020/05/07 Python
Opencv求取连通区域重心实例
2020/06/04 Python
Python替换NumPy数组中大于某个值的所有元素实例
2020/06/08 Python
python爬虫要用到的库总结
2020/07/28 Python
德国汉莎航空中国官网: Lufthansa中国
2017/03/30 全球购物
澳大利亚自然和有机的健康美容产品一站式商店:Ziani Beauty
2017/12/28 全球购物
宝拉珍选美国官网:Paula’s Choice美国
2018/01/07 全球购物
护理不良事件检讨书
2014/02/06 职场文书
奉献演讲稿范文
2014/05/21 职场文书
管理标语大全
2014/06/24 职场文书
政府个人对照检查材料思想汇报
2014/10/08 职场文书
2015秋季运动会通讯稿
2015/07/18 职场文书
2016年五一劳动节专题校园广播稿
2015/12/17 职场文书
Nginx配置Https安全认证的实现
2021/05/26 Servers
MySQL事务的ACID特性以及并发问题方案
2022/07/15 MySQL