看书笔记《python基础》__1

''' 学习pyhon基础   0xAF  十六进制  010  八进制  pow(2,3)  2 的3 次方  __future__  把下一版本的特性导入当前版本\  转移 r 标识源字符串python 有6中建序列:列表, 元祖  字符串  Unicode字符串 buffer对象  xrange对象通用序列操做: 索引,分片  序列相加,乘法 成员资格 长度  最小值 最大值成员资格: 用In检查是否在序列中[2:10:1]  1表示步长将有字符组成的列表转化成字符串 ''.join(somelist)  列表的修改,  list[2]=xx  del list[2]  删除  count 统计出现的次数 [1,2,4,3,2,1,4].count(1)  extend(list)   index('value')  得到下表  reverse  反转字符串  排序:  key = len  reverse = true  模板字符串:    s = Template('A $thing must never $action')    d = {}    d['thing'] = 'selen'    d['action'] = 'act'    s.substitute(d)    from string import Template    s = Tempalte('$x .oooo')    s.substitute(x= 'hello')        字符串的格式化:    字典:len 返回键值对的数量        d[k]  返回值        del d[k]  删除为k 的项        k in d  检查是否存在键为k的项        d.get('name')  有则返回value 无则返回none        d.items()  转化为list        d.iteritems() 转化为迭代器        d.keys()  以列表返回键        d.update(d)  更新一个字典        d.setdefault('name',N/A)列表推到式:[x*x for x in range(10)][x*x for x in range(10) if x%3 == 0] callable()  判断函数是否可用文档化函数     print(help()) '''storage = {}me = 'Magnus Lie Hetland'storage['first'] = [me]storage['middle'] = [me]storage['last'] = [me]def init(data):    data['first'] = {}    data['middle'] = {}    data['last'] = {}def lookup(data,label,name):    return data[label].get(name)  #得到键的值storage = {}init(storage)print(storage)def stor(data,full_name):    names = full_name.splite() #分红列表    print(names)    if len(names) == 2 :names.insert(1,'')    labels = 'first','middle','last'    for label,name in zip(labels,names):  #返回一个可迭代对象        people = lookup(data,label,name)  #返回label的值        if people:            people.append(full_name)        else:            data[label][name] = [full_name]'''收集参数:def print_params(x,y,z=3,*pospor,**keypar):    print(x,y,z)    print(pospor)    print(keypar)print_params(1,2,3,4,5,6,foo =1,bar =2)1,2,3(4,5,6){foo: 1,bar:2}'''def add(x,y): return x+ypar=(1,2)add(*par)  #参数收集的逆过程def hello_3(greet='hello',name='world'):    print('%s,%s'%(greet,name))par = {'name':'selen','greet':'hello'}hello_3(**par) #解字典def stor(**kwargs):    return 'once   there was a '\        '%(job)s called %(name)s.'%kwargsdef power(x,y,*other):    if other:        print('recv:'.other)    else:        return pow(x,y)def interval(start,stop=None,step=1):    if stop is None:        start, stop = 0,start    result = []    i=start    while i< stop:        result.append(i)        i+=step    return result#做用域x = 1scope = vars() #返回一个不可修改字典print(scope['x'])def search(sequeue,number,lower = 0,upper = None):    if upper is None: upper = len(sequeue)-1    if lower == upper:        assert number == sequeue[upper]        return upper    else:        middle = (lower+upper)//2        if number > sequeue['middle']            return search(sequeue,number,middle=1,upper)        else:            return search(sequeue,number,lower,middle-1                          )多态  封装__metclass__ =type 使用新式类变量绑定一个方法。
相关文章
相关标签/搜索