学Python——第二十课 我的知识词典

​    学习过程中总会遇到想把一些知识点记录下来备忘,也便于以后查找。只要掌握词典这种数据类型和文件操作,就可以编写一个Python程序完成这样的工作。字典的操作,上一课已经学了,但文件操作还没有,下面对文件操作进行简单介绍。

    先用记事本在程序存放文件夹下用utf-8创建一个文本文件“myPython.txt"

注:如果出现乱码,把编码类型改为:

    1、读文件(当第二参数忽略,默认是读文件):

程序文件代码:

执行输出:

观察输出结果中列表第一项后多了"\n”,这是换行符,如果直接把每项都打出来会怎样呢?

程序代码:

输出结果:

可见,行之间多了一个空行,解决办法有2个:

办法一:打印时利用字符串内置函数rstrip消除列表中的换行符"\n"

办法二:打印时取消print函数的默认换行功能

    如果文件很大,用readreadlines函数都可能使程序运行很慢,甚至出现内存溢出。Pythonfor......in......句型提供了逐行读取功能。

    2、写文件

1)只写文件,旧内容被覆盖:

写前文件内容:

程序代码:

执行后文件内容:

可见,对话没有换行,程序有bug,修正的办法是在所写的字符串最后加换行符"\n"如下:

重新运行后文件内容:

成功排除bug

2)追加文件内容

追加前文件:

程序文件:

已存在的文件追加后:

不存在的文件追加后生成了:

3)读写文件:“w+”参数包括“w”参数提供的功能,因此可以当作“w"参数来使用。不同之处是"w"只能顺序写文件,”w+"支持非顺序写文件(这里不讨论非顺序写文件)。

 

《我的知识词典》程序代码:

 

练习题:把上面的程序,打入py文件中后运行。