Python
Scott f
这个作者很懒,什么都没留下…
展开
-
Python学习(一)-深浅拷贝
我们了解到很多语言都有深浅拷贝一说,之前我只是单纯的将引用当作浅拷贝,而把独立开辟空间将数值一一进行复制理解为深拷贝。这种想法在一定情况下是错误的,比如Python。这里我们必须区分两种情况,其拷贝对象是可变对象还是不可变对象。可变对象:赋值:如果是单纯的赋值,这只是一个简单的索引拷贝,即两个变量同时指向了一个内存空间,如下图:如果改变b中的值,则a中的值也会发生变化,a和...原创 2019-05-09 19:56:46 · 212 阅读 · 0 评论 -
Python学习(二)-Iterator、Iterable和for的关系
在python中进行循环迭代取数据大多使用for语句,for语句可以迭代的类型有许多,但是与Iterator和Iterable有什么关系呢?字面翻译:Iterator是迭代器,而Iterable是可迭代的意思。像我们常用的list,tuple,dict,set,str通过代码可以发现都属于可迭代的,即Iterable:那什么是Iterator呢?同样对上面的例子进行一遍测试:...原创 2019-05-10 19:55:29 · 360 阅读 · 0 评论 -
Python学习(三)-类属性与对象属性
什么是类属性,什么是对象属性?前面先讲一下动态类型与静态类型:动态类型与静态语言有所不同的,由于python是动态类型,这意味着python在创建对象时是可以随意增加属性。类属性是类本身的属性,无论这个类创建了多少的对象,其类属性依然只有一个,所以对象与对象之间可以共享类属性。对象属性则是对象的属性,会根据对象的创建而创建,销毁而销毁,对象与对象之间不能共享对象属性。特别注意:...原创 2019-05-10 20:23:26 · 1005 阅读 · 0 评论 -
Python学习(四)-定制类
在设计类的时候可以根据自己的需要定制类,其中主要用到的有__slots__、__str__、__repr__、__len__、__iter__、__next__、__getitem__、__setitem__、__getattr__、__call__等特殊的函数名以及@property和@xxx.setter。每个都有其特殊意义,能有助于我们更好的设计类控制类。__slots__:用于限制...原创 2019-05-12 22:03:36 · 227 阅读 · 0 评论