python笔记

原创 2015年11月21日 20:45:56

Python对象的id,type都是不可变的(type特殊情况下可以改变,但并不好,所以可以认为type也是不变的)。

值也不能改变的对象称为不可变对象。

 

对象的可变性、可能具有的取值、可以进行的操作(方法)、最多有几个该类型的对象(如None,NotImplmented,Ellipsis类型均只有1个对象)均由对象的类型决定。

 

不可变:数值、字符串、元组。

可变对象:字典,列表。

 

对于不可变容器(如元组),其中引用的对象若属于可变对象,其对象的值可以改变,但是不可变容器还是认为是不可变的,因为其中的引用(对象ID)不可变。

 

对于可变容器(如字典、列表)

大多数情况下,当我们谈到一个容器的值时,我们是指值,而不是所包含的对象的ID;然而,当我们谈论容器对象的可变性的时候,就只是指被直接包含的对象的ID因此,如果一个不可变对象(如元组)包含了一个可变对象的引用,那么当这个可变对象的值改变时它的值也发生改变。

 

 

 

如果一个命名声明为全局的,那么对它的所有引用和赋值会直接搜索包含这个模块全局命名的作用域。否则,在最里面作用域之外找到的所有变量都是只读的(对这样的变量赋值会在最里面的作用域创建一个 的局部变量,外部具有相同命名的那个变量不会改变)。

Python的一个特别之处在于——如果没有使用global语法——其赋值操作总是在最里层的作用域。赋值不会复制数据——只是将命名绑定到对象。删除也是如此:del x只是从局部作用域的命名空间中删除命名x

python 类机制的几个注意点

python的类机制是C++和Python's Modula-3的混合。 允许多继承,c++也允许,但java不允许。 用C++的术语来讲,所有的类成员都是公有的,所有的成员函数都是虚拟的(vir...
  • flybird19870326
  • flybird19870326
  • 2013年05月22日 13:53
  • 798

深入理解 python 中的赋值、引用、拷贝、作用域

在 python 中赋值语句总是建立对象的引用值,而不是复制对象。因此,python 变量更像是指针,而不是数据存储区域, 这点和大多数 OO 语言类似吧,比如 C++、java 等...
  • liqfyiyi
  • liqfyiyi
  • 2016年06月13日 16:12
  • 2066

python 之 赋值和拷贝(你真的了解吗),python赋值

python 之 赋值和拷贝(你真的了解吗),python赋值 现象:先上一段代码。 >>> import copy >>> a = [1,2,3,4,['a','b']] >>> b =...
  • solariens
  • solariens
  • 2016年12月09日 00:15
  • 2111

用python做数据分析4|pandas库介绍之DataFrame基本操作

原文地址 怎样删除list中空字符? 最简单的方法:new_list = [ x for x in li if x != '' ] 今天是5.1号。 这一部分主要学...
  • u011089523
  • u011089523
  • 2017年03月04日 21:32
  • 11246

小甲鱼《零基础入门学习Python》课堂笔记

  • 2017年12月04日 20:25
  • 6.69MB
  • 下载

小甲鱼《零基础入门学习Python》学习笔记:知识点+课后习题答案(前25课)

  • 2017年12月25日 18:28
  • 1.55MB
  • 下载

python读书笔记(不遗漏每一步操作).pdf

  • 2018年01月08日 18:08
  • 5.59MB
  • 下载

Selenium python之学习笔记

  • 2017年12月04日 12:19
  • 1.33MB
  • 下载

python 项目笔记-外星人入侵地球游戏

  • 2017年12月21日 17:01
  • 376KB
  • 下载

python入门笔记(强烈推荐).pdf

  • 2017年12月21日 11:20
  • 7.15MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:python笔记
举报原因:
原因补充:

(最多只允许输入30个字)