今天是day08,以下是学习总结:
但行努力,莫问前程。
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
with语句:为防止打开文件之后忘记写f.close()
这种方式在退出with级别的时候就自动关闭文件,就不用写f.close()
with同时管理多个文件对象:(对应下文的 修改文件内容 部分)
同样,在退出with级别的时候就自动关闭文件,就不用写f.close()
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
读模式:
写模式:
append 追加
模式:
r+模式:读正常读,写永远在文件内容最后写。
w+模式:可写可读,但在打开的时候就已经清空,写入之后光标在末尾位置,直接继续读的话是没有内容的,所以在读之前,需要f.seek(0)
a+模式:与r+模式一样,可写可读,但是光标是在最后位置,r+是光标在第一个位置。
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
其他系列的操作模式:
1.readlines() 方法用于读取所有行,没有参数,该列表可以由 Python 的 for循环进行遍历处理。
run:
2.tell() 方法
tell() 方法返回文件的当前位置,即文件指针当前位置。
英文就是一个字符光标显示1
中文不是。
3.seek() 方法
seek() 方法用于移动文件读取指针到指定位置。
4.flush() 方法:可以做进度条
flush() 方法是用来刷新缓冲区的,即将缓冲区中的数据立刻写入文件,同时清空缓冲区,不需要是被动的等待输出缓冲区写入。
一般情况下,文件关闭后会自动刷新缓冲区,但有时你需要在关闭前刷新它,这时就可以使用 flush() 方法。
格式:文件.flush()
*打印出来的是一个一个出来的,即0.1秒出来一个,一共出来30个
5.truncate() 方法
truncate在使用时 打开文件必须为 w 或者 a 模式。因为截断相当于写东西。但注意w模式在开始时会格式化原文件的内容。
参数为 size,无 size 表示从当前位置截断;截断之后 V光标后面的所有字节被删除,其中 Widnows 系统下的换行代表2个字节大小。
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
修改文件内容:
文本2就是我们修改后的结果:
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
If else的语句优化 示例:
优化后:
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
字典转字符串 str()
字符串转字典 eval()