zoukankan      html  css  js  c++  java
  • Python从文件中读取数据

    一、读取整个文件内容

    在读取文件之前,我们先创建一个文本文件resource.txt作为源文件。

    resource.txt

    my name is joker,
    I am 18 years old,
    How about you?

    如何读取文件全部内容,我们编写到reader.py文件中。

    reader.py

    1 with open('resource.txt') as file_obj:
    2     content = file_obj.read()
    3     print(content)
    4         

    需要注意的是需要将resource.txt文件与read.py 放在同一目录下。

    运行后的结果如下:

    解释:open函数接收一个参数,此参数为将被读取内容的文件名,在调用之后返回表示这个文件的对象,Python将之存储在后面的变量(file_obj)中,关键字 with 在我们不再需要使用文件的时候将其关闭。

     上面的代码中open() 函数中传入的是一个相对路径,相对路径会从当前文件(reader.py)所在文件夹下查找指定文件(resource.txt),如果文件不在当前文件夹下,可以使用绝对路径。Linux系统绝对路径如:

    /home/joker/dic这样的,Windows系统的绝对路径如:C:/pyhton_workspace/dic 这样的。

    二、逐行读取文件内容

    1 file_name = 'resource.txt'
    2 
    3 with open(file_name) as file_obj:
    4     for content in file_obj:
    5         print(content)

    控制台打印如下:

    解释:在上面的程序中,因为Python在读取文件之后将其存入对象file_obj 中,我们通过对该对象进行循环来遍历文件中的每一行,但是却发现,多了空白行,因为在这个文件中,有看不见的换行符,且print语句语句也会加上一个换行符,因此每行的末尾会有两个换行符。要消除多于的空白行可在print语句中调用rstrip() 方法,如下:

    1 file_name = 'resource.txt'
    2 
    3 with open(file_name) as file_obj:
    4     for content in file_obj:
    5         print(content.rstrip())

    控制台打印如下:

    现在,和与读取整个文件的输出相同了。

  • 相关阅读:
    oo——第三单元总结
    oo第三单元总结
    【BUAA软工】提问回顾与个人总结
    【BUAA软工】HTTP协议前后端实现及实战北航云盘爬取
    【BUAA软工】软件案例分析
    【BUAA软工】结对编程作业
    【BUAA 软工个人项目作业】玩转平面几何
    【BUAA 软工博客作业】个人博客作业
    【BUAA 软工热身作业】继往开来,勇攀高峰
    BUAA-OO-第四单元总结——终章
  • 原文地址:https://www.cnblogs.com/tizer/p/11032642.html
Copyright © 2011-2022 走看看