至此,已经掌握了Python的基本技能,在本章中将学习如何进行文件操作。

文件操作

从文件中读取文件

文本数据可存储大量数据,每当需要分析或者修改存储在文件中的信息的时候,读取文件就显得至关重要了。

1、读取整个文件

首先在.py文件目录下面新建一个“11.txt”文件,在文本内输入如下数据:

编写如下代码:

首先在以任何方式使用文件时,首先必须打开文件,这样才能访问他。函数open()接受一个参数:要打开文件的名字,Python会在当前文件的目录下查找指定文件。open()函数返回一个表示该文件的对象。

关键字with在不需要访问文件的时候将其关闭。打开文件之后我们使用read()函数读取文件的全部内容,并将其作为一个长字符串保存在contents变量中。但是仔细观察我们发现这个打印结果会多空出一行来,这是因为read()函数到达文件末尾会返回一个空字符串,而这个空字符串显示出来就是一个空行,要删除末尾的空行,可使用print语句中的rstrip()语句。

2、逐行读取

有时候需要逐行读取文件,例如查找特定的信息,要以每一次的形式检查文件,可对文件对象使用for循环:

这时候我们发现打印每一行时候都有一个空白行,我们将上述代码输出语句修改成:print line.rstrip()

3、readlines()函数

使用with关键字,open()函数返回文件对象只在with代码内可用,如果要在with代码块外面访问文件的内容,可将文件的各行存储在一个列表中。readlines()函数从文件只能读取每一行,然后将其存储在一个列表中:

写入文件

数据的保存在程序运行中至关重要,下面我们将学习编写程序保存数据

1、写入空文件

在这个实例中,open()接受两个参数,第一个是要打开的文件名,第二个参数实参('w')告诉Python以写入模式打开这个文件。打开文件时有三种可选模式,分别是读取模式('r')、写入模式('w')和附加模式('a')或者是能够读取和写入的模式('r+'),如果省略参数,则默认为读取模式
运行这段代码后,我们可以在当前目录下找到该文件

注意:Python只能将字符串写入文本文件,如若将数值数据存入文本,则需要转换着字符串类型。另外,如果以写入方式打开文件并写入已存文件时,会覆盖掉原有数据,我们将原代码修改成如下形式:

运行之后我们发现,原来文本中的'I love Python!'已经被覆盖掉了。

2、附加到文件

如果要给文件添加内容,而不是覆盖原有内容,可以使用附加模式打开文件。在以附加模式打开文件时,Python不会在返回文件对象前清空文件,而你写入的内容都会添加到原有文件内容的末尾,如果文件不存在,则Python会为你创建一个空文件。

【懒懒的Python学习笔记九】相关推荐

  1. 【懒懒的Python学习笔记七】

    在本章节中将学习编写函数,所谓函数是带有名字的完成特定功能的代码块.要执行函数定义的特定任务,可以调用该函数,所以在程序中将完成特定功能的部分写成函数,这样在多次执行同一任务的时候就无需反复编写代码了 ...

  2. 【懒懒的Python学习笔记六】

    大多数程序旨在最终解决用户问题,为此通常需要从用户那里输入信息,在本章学习中,我们将学习Python的raw_input()函数接受用户输入以及学习while循环来控制程序的运行. 函数raw_inp ...

  3. 【懒懒的Python学习笔记五】

    在这一章中,你将学习到能够将信息关联起来的Python字典,将学习如何访问和修改字典中的信息,同时也会学习如何遍历字典中的数据. 一.一个简单的字典 新建了一个存储用户信息的字典,里面存储了用户姓名. ...

  4. 【懒懒的Python学习笔记一】

    谨以此文献给最爱的詹詹: 选择Python 2 还是 Python 3? 使用2还是3一直是一个争论的要点,但是编程重要的是学习编程思想,语法只是细枝末节的东西!一直纠结2还是3是没有意义的.Pyth ...

  5. 【懒懒的Python学习笔记三】

    在上一章中,我们学习了如何创建列表.访问列表元素和简单的列表排序.那么在本章中,我们将进一步学习如何遍历整个列表和对列表更多的操作. 一.遍历列表 我们经常需要遍历整个列表,对每个元素执行相同的操作, ...

  6. Python学习笔记九:文件I/O

    打印到屏幕: 1 #!/usr/bin/python 2 3 print "Python is really a great language,", "isn't it? ...

  7. 【懒懒的Python学习笔记四】

    编程的时候常常需要检查一些条件,并据此决定采用什么措施,在Python中,if语句常用来做判断语句. 一.一个简单的示例 下面是一个简短的示例,演示了如何使用if语句进行判断,假如你有一个水果列表,你 ...

  8. 【懒懒的Python学习笔记十】

    在程序运行期间遇到错误,Python会报错.Python使用被称为异常的特殊对象来管理程序运行期间发生的错误.每当发生一个错误,Python会创建一个异常对象,如果你编写了处理该异常的代码,程序将继续 ...

  9. 【懒懒的Python学习笔记八】

    面向对象编程是最有效的编程方法之一,在面向对象编程中,你编写表示现实世界中事物和情景的类,并基于这些类来创建对象.使用类来创建对象被称为实例化. 创建和使用类 使用类可以模拟任何东西.下面的实例编写一 ...

最新文章

  1. 计算机考试题选择,(计算机考试题选择.doc
  2. 过河卒(Noip2002)
  3. Bluetooth LE(低功耗蓝牙) - 第五部分
  4. Qmake建立常见的项目类型
  5. html如何取消盒子间的间隔,使用flexbox时,多行子元素之间的间距如何控制?
  6. Win7下硬盘安装Redhat双系统
  7. 浅析GitLab Flow的十一个规则
  8. _CentOS「linux」学习笔记11:crontab定时任务常用参数和基本语法
  9. Linux 安装 safe-rm 工具(转载)
  10. 鸿蒙系统屏幕录制,鸿蒙系统游戏性能出色;三星折叠屏发布屏下摄像头
  11. Kettle入门案例
  12. 【Web开发】Python实现Web图表功能(D-Tale入门)
  13. linux---常用命令(二)
  14. java.lang.Byte常用方法
  15. 平面设计实验五 图层及图层混合模式
  16. Win10去除资源管理器导航窗格多余的文件夹(3D对象、桌面、图片等)
  17. java二重积分_《University Calculus》-chaper13-多重积分-二重积分的计算
  18. CANoe-CAN通信
  19. 求两个数之间的素数和
  20. 【笔记】——MySQL数据库——基础知识-——快速回顾——(加深印象篇)

热门文章

  1. 虚拟滚动列表和css虚拟滚动【有思考】
  2. ceph 监控--calamari
  3. 四、入门python第四课
  4. 以创业思维和产品思维复盘《商业简史》
  5. 微信号名称乱码什么情况_换手率数据透露一强烈信号;微组合保持谨慎;新基建股票池跌多涨少情况不佳……...
  6. 缺氧游戏 不给计算机加水,缺氧高压氧简易版 教你最简单的结构
  7. APUD命令详解 3GPP USIM 卡文件
  8. 【uniapp】 判断浏览器环境
  9. 更改MySQL密码并验证,及使用SQLyog登入MySQ
  10. 程序员进阶架构师、技术总监、CTO,需要掌握哪些核心技能