python从入门到精通(DAY 2)


Posted in Python onDecember 20, 2015

1、字典复制:

dict = {'name':'wang', 'sex':'m', 'age':34, 'job':'it'}

info = dict      ##别名 (二个字典指向内存的同一地址空间)

info1 = dict.copy()  #shadow copy 浅复制(嵌套字典第一层独立,第二层以下相关联)

import copy

copy.copy()      #shadow copy 浅复制

copy.deepcopy()    #deep copy  深复制(完全独立)

注:浅复制下的关联只是针对字典初始状态包含的嵌套对象,后新加的不会

例:

>>> dict
{'info': ['a', 'b', 1, 2], 'job': 'it', 'sex': 'm', 'age': 40, 'name': 'wang'}
>>> dict_alias = dict
>>> dict_copy = copy.copy(dict)
>>> dict_deep = copy.deepcopy(dict)

#添加、改变、删除第一层的对象键值,浅复制和深复制都不受影响

>>> dict['age'] = 32

>>> del dict['sex']
>>> dict
{'info': ['a', 'b', 1, 2], 'job': 'it', 'age': 32, 'name': 'wang'}
>>> dict_alias   
{'info': ['a', 'b', 1, 2], 'job': 'it', 'age': 32, 'name': 'wang'}
>>> dict_copy   
{'info': ['a', 'b', 1, 2], 'job': 'it', 'age': 40, 'name': 'wang', 'sex': 'm'}
>>> dict_deep   
{'info': ['a', 'b', 1, 2], 'job': 'it', 'age': 40, 'name': 'wang', 'sex': 'm'}

#改变、删除原有的第二层的对象键值,浅复制受影响,而深复制都不受影响

>>> dict['info'][2] = 100
>>> dict
{'info': ['a', 'b', 100, 2], 'job': 'it', 'age': 32, 'name': 'wang'}
>>> dict_alias
{'info': ['a', 'b', 100, 2], 'job': 'it', 'age': 32, 'name': 'wang'}
>>> dict_copy
{'info': ['a', 'b', 100, 2], 'job': 'it', 'age': 40, 'name': 'wang', 'sex': 'm'}
>>> dict_deep
{'info': ['a', 'b', 1, 2], 'job': 'it', 'age': 40, 'name': 'wang', 'sex': 'm'}

#添加第二层的对象,浅复制和深复制都不受影响

>>> dict['new'] = {'a':1, 'b':2, 'c':5}
>>> dict
{'info': ['a', 'b', 100, 2], 'name': 'wang', 'age': 32, 'job': 'it', 'new': {'a': 1, 'c': 5, 'b': 2}}
>>> dict_alias
{'info': ['a', 'b', 100, 2], 'name': 'wang', 'age': 32, 'job': 'it', 'new': {'a': 1, 'c': 5, 'b': 2}}
>>> dict_copy
{'info': ['a', 'b', 100, 2], 'job': 'it', 'age': 40, 'name': 'wang', 'sex': 'm'}
>>> dict_deep
{'info': ['a', 'b', 1, 2], 'job': 'it', 'age': 40, 'name': 'wang', 'sex': 'm'}

2、内置函数说明:

      __name__:主文件时返回main,否则返回文件名,可用来判断是否说主文件还是导入模块;

      __file__:文件的绝对路径;

      __doc__:文件开头的注释说明

例:

'''
  created by 2015-12-18
  @author: kevin
'''

if __name__ == '__main__':
  print('this is main file')
  print(__file__)
  print(__doc__)
Python 相关文章推荐
python检测远程服务器tcp端口的方法
Mar 14 Python
python实现用户登录系统
May 21 Python
django项目运行因中文而乱码报错的几种情况解决
Nov 07 Python
对python pandas读取剪贴板内容的方法详解
Jan 24 Python
使用python itchat包爬取微信好友头像形成矩形头像集的方法
Feb 21 Python
关于Python 的简单栅格图像边界提取方法
Jul 05 Python
django框架auth模块用法实例详解
Dec 10 Python
python装饰器使用实例详解
Dec 14 Python
python实现跨excel sheet复制代码实例
Mar 03 Python
Django模型中字段属性choice使用说明
Mar 30 Python
TensorFlow2.1.0安装过程中setuptools、wrapt等相关错误指南
Apr 08 Python
python图像处理基本操作总结(PIL库、Matplotlib及Numpy)
Jun 08 Python
利用python代码写的12306订票代码
Dec 20 #Python
python从入门到精通(DAY 1)
Dec 20 #Python
在DigitalOcean的服务器上部署flaskblog应用
Dec 19 #Python
用ReactJS和Python的Flask框架编写留言板的代码示例
Dec 19 #Python
使用Python编写简单的端口扫描器的实例分享
Dec 18 #Python
十个Python程序员易犯的错误
Dec 15 #Python
Python学习笔记整理3之输入输出、python eval函数
Dec 14 #Python
You might like
PHP面向对象学习笔记之一 基础概念
2012/10/06 PHP
php-fpm开启状态统计的方法详解
2017/06/23 PHP
PJ Blog修改-禁止复制的代码和方法
2006/10/25 Javascript
在你的网页中嵌入外部网页的方法
2007/04/02 Javascript
动态创建样式表在各浏览器中的差异测试代码
2011/09/13 Javascript
JQuery获取各种宽度、高度(format函数)实例
2013/03/04 Javascript
js操作iframe的一些方法介绍
2013/06/25 Javascript
javascript里绝对用的上的字符分割函数总结
2014/07/31 Javascript
jQuery中removeData()方法用法实例
2014/12/27 Javascript
深入理解Node.js中的进程管理
2017/03/13 Javascript
bootstrap table动态加载数据示例代码
2017/03/25 Javascript
jQuery 禁止表单用户名、密码自动填充功能
2017/10/30 jQuery
Vue.js 动态为img的src赋值方法
2018/03/14 Javascript
vuex操作state对象的实例代码
2018/04/25 Javascript
JS实现可针对算术表达式求值的计算器功能示例
2018/09/04 Javascript
微信小程序MUI侧滑导航菜单示例(Popup弹出式,左侧不动,右侧滑动)
2019/01/23 Javascript
vue路由跳转传参数的方法
2019/05/06 Javascript
如何在postman中添加cookie信息步骤解析
2020/06/30 Javascript
详解如何使用React Hooks请求数据并渲染
2020/10/18 Javascript
Python  __getattr__与__setattr__使用方法
2008/09/06 Python
理解Python中函数的参数
2015/04/27 Python
Python文件和流(实例讲解)
2017/09/12 Python
基于DataFrame改变列类型的方法
2018/07/25 Python
python实现定时发送qq消息
2019/01/18 Python
对python使用telnet实现弱密码登录的方法详解
2019/01/26 Python
Dlib+OpenCV深度学习人脸识别的方法示例
2019/05/14 Python
Python编程快速上手——Excel表格创建乘法表案例分析
2020/02/28 Python
pytorch 中的重要模块化接口nn.Module的使用
2020/04/02 Python
Python datetime模块使用方法小结
2020/06/18 Python
Omio波兰:全欧洲低价大巴、火车和航班搜索和比价
2018/02/16 全球购物
信息专业大学生自我评价分享
2014/01/17 职场文书
护士见习期自我鉴定
2014/02/08 职场文书
楼面部长岗位职责范本
2014/02/14 职场文书
实习生辞职信范文
2015/03/02 职场文书
出纳试用期工作总结2015
2015/05/28 职场文书
如何用Laravel包含你自己的帮助函数
2021/05/27 PHP