初识python
来源:互联网 发布:万网域名主机记录 编辑:程序博客网 时间:2024/06/03 16:13
第一天:
函数isinstance()可以判断一个变量的类型,既可以用在Python内置的数据类型如str、list、dict,也可以用在我们自定义的类,它们本质上
都是数据类型;
可以用 dir() 函数获取变量的所有属性:dir()返回的属性是字符串列表,如果已知一个属性名称,要获取或者设置对象的属性, 就需要用
getattr() 和 setattr( )函数了:
Python 定义了__str__()和__repr__()两种方法,__str__()用于显示给用户,而__repr__()用于显示给开发人员。可以用 type() 函数获取变
量的类型,它返回一个 Type 对象:
对 int、str 等内置数据类型排序时,Python的 sorted() 按照默认的比较函数 cmp 排序,但是,如果对一组 Student 类的实例排序时,就必
须提供我们自己的特殊方法 __cmp__()
第二天:
如果一个类表现得像一个list,要获取有多少个元素,就得用 len() 函数。要让 len() 函数工作正常,类必须提供一个特殊方法__len__(),
它返回元素的个数。
由于Python是动态语言,任何实例在运行期都可以动态地添加属性。如果要限制添加的属性,例如,Student类只允许添加 name、gender
和score 这3个属性,就可以利用Python的一个特殊的__slots__来实现。
类的继承:
class Person(object):
__slots__ = ('name', 'gender')
def __init__(self, name, gender):
self.name = name
self.gender = gender
class Student(Person):
__slots__ = ("score",)
def __init__(self,name,gender,score):
super(Student, self).__init__(name,gender)
self.score = score
需要注意是双下划线(_)
一个类实例也可以变成一个可调用对象,只需要实现一个特殊方法__call__()。我们把 Person 类变成一个可调用对象:
class Person(object): def __init__(self, name, gender): self.name = name self.gender = gender def __call__(self, friend): print 'My name is %s...' % self.name print 'My friend is %s...' % friend
在可以对 Person 实例直接调用:
>>> p = Person('Bob', 'male')>>> p('Tim')My name is Bob...My friend is Tim...
单看 p('Tim') 你无法确定 p 是一个函数还是一个类实例,所以,在Python中,函数也是对象,对象和函数的区别并不显著
- 初识python
- 初识Python
- 初识python
- 初识PYTHON
- 初识Python
- 初识Python
- 初识Python
- Python -- 初识
- 初识Python
- 初识Python
- Python初识
- 初识python
- 初识python
- 初识Python
- python初识
- 初识Python
- 初识Python
- 初识Python
- 正则表达式语法
- 数据结构之哈希表
- 各数据库的JDBC的URL
- 双数组Trie树(DoubleArrayTrie)Java实现
- Hadoop学习路线
- 初识python
- C++虚继承内存布局===写得很牛!推荐
- 计算机视觉笔记(二)图像处理(1)图像、滤波、边缘检测、车牌识别、SVM
- javascript 闭包
- IO模式设置网络编程常见问题总结—IO模式设置,阻塞与非阻塞的比较,recv参数对性能的影响—O_NONBLOCK(open使用)、IPC_NOWAIT(msgrcv)、MSG_DONTWAIT(re
- wp 和sp
- 建立领域模型
- 关于命名空间的互相引入的例子
- MD5加密