-
实例属性的创建:由于Python是动态语言,可以直接为实例的属性赋值。
class Person(object): pass p1 = Person() p1.name = 'p1'
查看全部 -
类的创建:
class Person(object): pass xiaoming = Person() xiaohong = Person()
类名以大写字母开头,(object)表示从object类继承。
查看全部 -
安装第三方模块:使用Python提供的模块管理工具。
easy_install
pip查看全部 -
filter()函数接收一个函数 f 和一个list,这个函数 f 的作用是对每个元素进行判断,返回 True或 False,filter()根据判断结果自动过滤掉不符合条件的元素,返回由符合条件元素组成的新list。
注意: s.strip(rm) 删除 s 字符串中开头、结尾处的 rm 序列的字符。
当rm为空时,默认删除空白符(包括'\n', '\r', '\t', ' '),
查看全部 -
__future__模块:当新版本的一个特性与旧版本不兼容时,该特性将会在旧版本中添加到__future__中,以便旧的代码能在旧版本中测试新特性。
>>> from __future__ import division >>> print 10 / 3 3.3333333333333335 >>> from __future__ import unicode_literals >>> s = 'am I an unicode?' >>> print isinstance(s, unicode) True
查看全部 -
动态导入模块:
try: from cStringIO import StringIO except ImportError: from StringIO import StringIO
注:上述代码先尝试从cStringIO导入,如果失败了(比如cStringIO没有被安装),再尝试从StringIO导入。这样,如果cStringIO模块存在,则我们将获得更快的运行速度,如果cStringIO不存在,则顶多代码运行速度会变慢,但不会影响代码的正常执行。
查看全部 -
导入模块:
import os print os.path.isfile(r'...') import os.path print os.path.isfile(r'...') from os import path print path.isfile(r'...') from os.path import isfile print isfile(r'...')
导入模块并更名:
from os.path import isfile as isafile
查看全部 -
模块:一个.py文件就是一个模块。
模块的引用:
import math print math.pow(2, 10)
包:存放各个模块的目录。
包的每层目录中必须含有一个名为 __ini__.py 的模块。
模块的完整引用:
import p1.util print p1.util.f(2, 10)
查看全部 -
偏函数:在已有函数的基础上通过给函数参数预赋值创建新函数,新函数可以不传入那些参数从而减少参数个数。
import functools sorted_ignore_case = functools.partial(sorted, cmp = lambda s1, s2: cmp(s1.upper(), s2.upper()))
查看全部 -
def log(f): def fn(x): print 'call ' + f.__name__ + '()...' return f(x) return fn
查看全部 -
难点 多一层套而已
查看全部 -
sorted() 默认比较函数的定义如下:
比较函数的定义是,传入两个待比较的元素 x, y,
如果 x 应该排在 y 的前面,返回 -1,
如果 x 应该排在 y 的后面,返回 1。
如果 x 和 y 相等,返回 0。
查看全部 -
字符串的大小比较
查看全部 -
math.sqrt()返回结果是浮点数
查看全部 -
reduce()还可以接收第3个可选参数,作为计算的初始值。如果把初始值设为100,计算:
reduce(f, [1, 3, 5, 7, 9], 100)
结果将变为125,因为第一轮计算是:
计算初始值和第一个元素:f(100, 1),结果为101。
查看全部
举报