1.异常
NameError
SyntaxError
KeyError
AttributeError
try后面接操作,except后面接错误
捕获所有异常
Exception为捕获所有异常,as为把异常输出,一般调试时候使用
一般文件操作的时候还会有finally来关闭文件
2.函数的定义
1部分文本
文本的输出 .split函数作用是让输出以 ‘ | ’ 作为分隔符输出
2部分文本
输出文本。strip的作用是去掉文本中的换行符
遇到的两个小错误
普通打开会有错误
这是由于格式不对。学习链接:(18条消息) UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 2: illegal multibyte sequence_北洋的青春的博客-CSDN博客
按行读取.readline .readlines区别。前者是读取文件中的一行,后者是读取文件中的每一行 学习链接Python readline()和readlines()函数:按行读取文件 (biancheng.net)
2 .一个函数例子
大概功能是统计一段文本中人物出现的次数。下面是打开名字文本,按行输出文本中的名字,以‘|’作为区分符,然后让n指向这些名字输出。上面是一个定义的函数,打开原文文本,并将换行置换成空格并赋给data。然后输出re.findall函数,返回data中所有与hero匹配的全部字符串,返回形式为数组。Python 正则表达re模块之findall()详解 - 知乎 (zhihu.com)
3.可变长函数
可变长函数,非必须输入前需用*
4.函数作用域
不加global前,fun()输出为123。 print输出为456
global为全局变量加了之后,两个输出均为456。不多叙述
3.迭代器与生成器
每运行next一次会输出一个,当运行值大于输出个数时会报错
range函数为一个迭代器,但是step只允许为整数,下面我们自制一个可以为小数的迭代器
yield函数的作用是运行一次输出一个值,让函数具有迭代的功能。这样就完成了一个迭代器的制作,含有yield又成为生成器,生成器也是一种特殊的迭代器。