类型
str
join函数:将序列中的元素以指定的字符连接生成一个新的字符串。
# 函数定义:str.join(sequence)
>>>name="name1"
>>>"-".join((name[:4], name[4:]))
'name-1'
# 通过‘-’连接tuple中的元素,作为新字符串返回。
strip函数:移除字符串头尾指定的字符(默认为空格或换行符)或字符序列。
# str.strip([chars]);
>>> s = "0123456543210"
>>> print s.strip('2051a')
3456543
# 只能删除开头或是结尾的字符,不能删除中间部分的字符。012三个字符被删除。
split函数:通过指定分隔符对字符串进行切片,如果参数 num 有指定值,则分隔 num+1 个子字符串。
# str.split(str="", num=string.count(str)).
# param str: 默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等
# param num: 分割次数,默认分隔所有。
>>> s = '012\t345\t654321 0'
>>> print s.split()
['012', '345', '654321', '0']
>>>print s.split("\t", 1)
['012', '345\t654321 0'] # 分割一次
dict
get函数:获取指定键的值。
# 函数定义:dict.get(key, default=None)
>>>d = {"key1": 1, "key2": 2}
>>>print d.get("key1")
1
>>>print d.get("key")
None
pop函数:删除字典给定键 key 及对应的值,返回值为被删除的值。
# pop(key[,default])
>>> d = {"a" : 1, "b" : 2}
>>> print d.pop("c", None)
None
>>> print d.pop("a", None)
1
>>> print d
{'b': 2}
# 如果key不存在,并且default没有给出,会报KeyError
函数
callable函数:检查一个对象是否可调用的。如果返回 True,object 仍然可能调用失败;但如果返回 False,调用对象 object 绝对不会成功。
# callable(object)
>>> def func():
... pass
...
>>> callable(func)
True
# 对于函数、方法、lambda 函式、 类以及实现了 __call__ 方法的类实例, 它都返回 True。
basestring函数:是 str 和 unicode 的超类(父类),也是抽象类,因此不能被调用和实例化,但可以被用来判断一个对象是否为 str 或者 unicode 的实例,isinstance(obj, basestring) 等价于 isinstance(obj, (str, unicode))
内部库
inspect
getmro函数:按方法解析顺序返回由当前类和其所有基类组成的元组。
import inspect
class C1:
def my_method(self):
pass
class C2(C1):
def my_method(self):
print "hi"
for c in inspect.getmro(C2):
print c.__name__
# OUTPUT
# C2
# C1