聊聊Python中关于a=[[]]*3的反思


Posted in Python onJune 02, 2021

Python 关于a=[[]]*3的反思

之前用python做了一个关于交通大数据的项目,由于之前比较赶进度,故现在会陆续更新对项目代码的一些反思。

1、

聊聊Python中关于a=[[]]*3的反思聊聊Python中关于a=[[]]*3的反思

由此可以看出,a[0],a[1],a[2]指向的是同一个元素,[[]]*3表示在a中开辟三份地址,且地址相同。

2、

聊聊Python中关于a=[[]]*3的反思聊聊Python中关于a=[[]]*3的反思

重新对a[0]赋值,故a[0]地址改变

3、

聊聊Python中关于a=[[]]*3的反思聊聊Python中关于a=[[]]*3的反思

对a[0][0]赋值,即改变a[0],a[1],a[2]指向的地址里的内容

注: .append\+=\-=等都不会重新赋地址,=会重新赋地址 故而,下面两条语句都会出现问题:

聊聊Python中关于a=[[]]*3的反思

在上述278、280两行的语句中,我都用到了[[]]*len(spts),所以只要其中某一个[]之后有.append或+=或其它不重新指向地址的行为,另外两个元素也会跟着改变。

Python a, b = b, a +b [Python3常见问题]

阅读文档发现的。

>>> # Fibonacci series:
... # the sum of two elements defines the next
... a, b = 0, 1
>>> while b < 10:
...     print(b)
...     a, b = b, a+b
...
1
1
2
3
5
8

他实际上就是:

c = a + b
a = b
b = c

其他应用

1. 交换

a, b = 0, 1
a, b = b, a

评价:省去了temp中间变量

2. 斐波那契

>>> a, b = 0, 1
>>> while b < 1000:
...     print(b, end=',')
...     a, b = b, a+b
...
1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,

评价:比起数组的,递归的,确实简洁

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 正则表达式操作指南
May 04 Python
python生成IP段的方法
Jul 07 Python
python得到单词模式的示例
Oct 15 Python
Python实现定制自动化业务流量报表周报功能【XlsxWriter模块】
Mar 11 Python
详解python函数的闭包问题(内部函数与外部函数详述)
May 17 Python
pytorch中如何使用DataLoader对数据集进行批处理的方法
Aug 06 Python
10个Python面试常问的问题(小结)
Nov 20 Python
Python统计学一数据的概括性度量详解
Mar 03 Python
Python通过kerberos安全认证操作kafka方式
Jun 06 Python
python向xls写入数据(包括合并,边框,对齐,列宽)
Feb 02 Python
matplotlib事件处理基础(事件绑定、事件属性)
Feb 03 Python
pycharm配置python 设置pip安装源为豆瓣源
Feb 05 Python
python内置进制转换函数的操作
Jun 02 #Python
Python 内置函数速查表一览
Jun 02 #Python
利用Python判断你的密码难度等级
Jun 02 #Python
Python标准库之typing的用法(类型标注)
只用50行Python代码爬取网络美女高清图片
这样写python注释让代码更加的优雅
Jun 02 #Python
上帝为你开了一扇窗之Tkinter常用函数详解
You might like
PHP截取中文字符串的问题
2006/07/12 PHP
用php实现批量查询清除一句话后门的代码
2008/01/20 PHP
php利用腾讯ip分享计划获取地理位置示例分享
2014/01/20 PHP
PHP的魔术常量__METHOD__简介
2014/07/08 PHP
PHP保存带BOM文件的方法
2015/02/12 PHP
php gd等比例缩放压缩图片函数
2016/06/12 PHP
php实现购物车功能(以大苹果购物网为例)
2017/03/09 PHP
jQuery实现的经典滑动门效果
2015/09/22 Javascript
JavaScript识别网页关键字并进行描红的方法
2015/11/09 Javascript
jQuery数据类型小结(14个)
2016/01/08 Javascript
通用无限极下拉菜单的实现代码
2016/05/31 Javascript
JavaScript中的 attribute 和 jQuery中的 attr 方法浅析
2017/01/04 Javascript
javascript实现简易计算器
2017/02/01 Javascript
关于axios返回空对象的问题解决
2017/04/04 Javascript
vue组件中点击按钮后修改输入框的状态实例代码
2017/04/14 Javascript
认识jQuery的Promise的具体使用方法
2017/10/10 jQuery
解决vue项目刷新后,导航菜单高亮显示的位置不对问题
2019/11/01 Javascript
JavaScript实现简单随机点名器
2019/11/21 Javascript
vue实现广告栏上下滚动效果
2020/11/26 Vue.js
[04:38]完美世界携手游戏风云打造 卡尔工作室饰品系统篇
2013/04/25 DOTA
python中List的sort方法指南
2014/09/01 Python
python中执行shell命令的几个方法小结
2014/09/18 Python
Python入门篇之字符串
2014/10/17 Python
查看Python安装路径以及安装包路径小技巧
2015/04/28 Python
小议Python中自定义函数的可变参数的使用及注意点
2016/06/21 Python
详解python的几种标准输出重定向方式
2016/08/15 Python
python类的继承实例详解
2017/03/30 Python
Python骚操作之动态定义函数
2019/03/26 Python
Python3内置模块random随机方法小结
2019/07/13 Python
Django-simple-captcha验证码包使用方法详解
2020/11/28 Python
NBA欧洲商店(英国):NBA Europe Store UK
2018/07/27 全球购物
解释下列WebService名词:WSDL、SOAP、UDDI
2012/06/22 面试题
个人找工作的自我评价
2013/10/17 职场文书
旅游网创业计划书
2014/01/31 职场文书
详解MySQL的Seconds_Behind_Master
2021/05/18 MySQL
win10拖拽文件时崩溃怎么解决?win10文件不能拖拽问题解决方法
2022/08/14 数码科技