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发送arp欺骗攻击代码分析
Jan 16 Python
python类:class创建、数据方法属性及访问控制详解
Jul 25 Python
Golang与python线程详解及简单实例
Apr 27 Python
Python数据结构与算法之图的基本实现及迭代器实例详解
Dec 12 Python
opencv python 基于KNN的手写体识别的实例
Aug 03 Python
Python中修改字符串的四种方法
Nov 02 Python
在python里协程使用同步锁Lock的实例
Feb 19 Python
python找出列表中大于某个阈值的数据段示例
Nov 24 Python
python base64库给用户名或密码加密的流程
Jan 02 Python
安装完Python包然后找不到模块的解决步骤
Feb 13 Python
python argparse模块通过后台传递参数实例
Apr 20 Python
如何基于Python按行合并两个txt
Nov 03 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
重量级动漫纷纷停播!唯独OVERLORD第四季正在英魂之刃继续更新
2020/05/06 日漫
重新封装zend_soap实现http连接安全认证的php代码
2011/01/12 PHP
PHP FATAL ERROR: CALL TO UNDEFINED FUNCTION BCMUL()解决办法
2014/05/04 PHP
Thinkphp框架中D方法与M方法的区别
2016/12/23 PHP
关于Yii2框架跑脚本时内存泄漏问题的分析与解决
2019/12/01 PHP
jquery下checked取值问题的解决方法
2012/08/09 Javascript
JavaScript判断变量是否为数组的方法(Array)
2016/02/24 Javascript
javascript使用Promise对象实现异步编程
2016/03/01 Javascript
RequireJS使用注意细节
2016/05/15 Javascript
JS正则表达式修饰符global(/g)用法分析
2016/12/27 Javascript
Avalonjs双向数据绑定与监听的实例代码
2017/06/23 Javascript
解决ionic和angular上拉加载的问题
2017/08/03 Javascript
JS和JQuery实现雪花飘落效果
2017/11/30 jQuery
Vue中的验证登录状态的实现方法
2019/03/09 Javascript
ElementUI Tree 树形控件的使用并给节点添加图标
2020/02/27 Javascript
React实现阿里云OSS上传文件的示例
2020/08/10 Javascript
用JavaScript实现贪吃蛇游戏
2020/10/23 Javascript
玩转python selenium鼠标键盘操作(ActionChains)
2020/04/12 Python
python 调用HBase的简单实例
2016/12/18 Python
Python 实现文件的全备份和差异备份详解
2016/12/27 Python
sublime text 3配置使用python操作方法
2017/06/11 Python
Python爬取十篇新闻统计TF-IDF
2018/01/03 Python
redis之django-redis的简单缓存使用
2018/06/07 Python
django-filter和普通查询的例子
2019/08/12 Python
爬虫代理池Python3WebSpider源代码测试过程解析
2019/12/20 Python
基于python纯函数实现井字棋游戏
2020/05/27 Python
Python 调用 ES、Solr、Phoenix的示例代码
2020/11/23 Python
金融专业毕业生推荐信
2013/11/26 职场文书
四好少年事迹材料
2014/01/12 职场文书
安全目标管理责任书
2014/07/25 职场文书
国际贸易本科毕业生求职信
2014/09/26 职场文书
学习党的群众路线剖析材料
2014/10/09 职场文书
mybatis 获取无数据的字段不显示的问题
2021/07/15 Java/Android
mysql中整数数据类型tinyint详解
2021/12/06 MySQL
Sql Server之数据类型详解
2022/02/28 SQL Server
P站美图推荐——变身女主角特辑
2022/03/20 日漫