Python 总结(一)

python像其他的编程语言一样,作为一种开发工具,具有很多功能。对一门语言的学习,除了必要的语言构成因素(如汉语的拼音、英文的26个英文字母),以及编写程序时所用到的单位结构(如汉语中的简单汉字、英语的单词)之外,剩下的就是熟练应用及扩展。本文总结了python的简单知识点,作为对python语言的总结。

  1. 数据类型
    列表、字典、字符串(可修改)和元组(不可修改)。
    主要方法有:
    (1)索引s[i],长度len(s),删除del(s),其中s代表任意一种数据结构,i代表索引位置。
    (2)分片s[i:j]、乘法s*n、计数s.count(str),s代表列表、字符串和元组。
    (3)列表方法。
    l.append()#添加
    l.insert(index,str)#插入
    l.sort()#排序,默认升序
    (4)字符串方法
    s.find(str)#查找子字符串
    s.join(seq)#连接s与seq
    s.lower()#返回小写
    s.replace(str1,str2)#用str2替换str1
    s.split(str)#将s按照str分割成序列
    s.strip()#去除s首尾的空格

  2. 函数
    函数分为普通函数和特殊函数。
    1)普通函数
    (1)参数:形参和实参
    (2)作用域
    2)特殊函数
    (1)构造方法。方法名为__init__(),每次创建对象的时候,自动调用该方法,参数可选,存在参数时作为默认参数使用,即实例化过程,如果在对象使用过程中传入参数则使用默认参数。
    (2)属性。
    (3)迭代器__iter__和生成器。
    任何带有yield关键字的函数都是生成器(一步一步地输出)。具体功能可以当做return使用,但是yield在每次执行后会返回函数上次执行的断点处,在下次调用时继续执行。
    yield是一个表达式(Python2.5后的版本),需要将迭代器的结果赋给别的变量,然后用next()方法输出,知道结束(报错)。
    生成器方法:
    i)r.send(str)#在生成器断点处加入str,首次调用只能传递None;
    ii)r.next()#输出生成器一步结果;
    iii)r.throw()、r.close()#中断生成器。

  3. 对象
    (1)多态:对不同类型的数据和类的对象可以使用相同的处理方式。
    (2)封装:将内部具体实现方法隐藏(封装)起来,只给出处理结果,如带输出的函数。
    (3)继承:主要用于类,子类在继承超类时,注意超类的顺序,先继承的类中的方法会重写后继承的类中的方法。

  4. 异常
    (1)引发异常raise。
    (2)捕捉异常try/except[……finally]。
    (3)异常处理。
    (4)异常传播——逆调用方向直至主程序。

  5. 模块、包、库
    (1)模块(module):一个py文件或以其他文件形式存在的可被导入的就是一个模块。
    模块在导入过程中每次调用都会执行,解决的方法是,在该方法调用前添加:
    if __name__ == ‘__main__’:
    告知主程序,只有在程序被调用的时候才执行,导入时不执行。
    模块可调用的标准就是模块文件可以被编译器找到。
    (2)包(package):含有__init__.py文件的文件夹,内部含有若干其他模块。
    (3)库(lib):可以导入后调用的方法。注意标准库中的正则表达式模块re。
    i)函数
    compile()#预编译正则表达式,提升程序执行性能
    group()、groups()#显示匹配结果
    match()从头开始匹配
    search()#扫描整个字符串匹配
    findall()#找出所有匹配部分返回列表
    sub()、subn()#替换,attr2替换attr1,后者添加替换次数
    split()#分隔
    ii)特殊字符集
    ^脱字符,没有方括号表示匹配^后的字符串开始;有方括号表示不匹配方括号内^开始的字符串的任意字符;
    $匹配字符串结尾;
    \b匹配一个单词的边界;
    \B匹配后面字符串在别的字符串中出现的情况;
    \d十进制数字,大写表示不匹配;
    \w表示A-Za-z0-9,大写表示不匹配;
    \s表示空白字符集,大写表示不匹配。
    iii)符号
    | 管道符号,表示或;
    . 单个字符匹配,‘.’本身匹配需加转义符号‘\’;
    []表示匹配方括号中的任意字符;
    - 表示指定范围;
    *表示匹配0次或0次以上;
    +表示匹配1次或1次以上;
    ?表示匹配0次或1次,但跟在表示重复匹配的其他符号(*、+)后面表示匹配越短越好,终止贪婪匹配;
    {}表示匹配括号中数目次,范围表示匹配次数的范围;
    ()表示匹配结果分组。

  6. 文件
    (1)读取
    f.open(name,[mode])#打开文件;
    f.read([n])#读取n个字节到字符串;
    f.readline()#读取行(字符串行结束符之前);
    f.readlines()#读取所有行返回列表。
    (2)写入
    f.write(str)#写入文件;
    f.writelines()#将字符串列表写入文件,不包括行结束符;
    f.close()#关闭文件;
    f.seek(offset)#将当前位置移动到offset定义的位置。
    (3)读写格式
    r读,可读取文件信息;
    w写,是否清除之前内容与文件打开方式有关;
    a追加,打开文件,指针自动移动到末尾,文件不存在则创建;
    b二进制模式处理文件(rb、wb、ab)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值