我是靠谱客的博主 体贴蜗牛,最近开发中收集的这篇文章主要介绍说说在 Python 中,如何读取文件中的数据,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1 一次性读取

我们想要读取《傲慢与偏见》txt 小说(为简化例子,我们的 txt 只包含一段文字):

file = 'novel.txt'
with open(file) as file_object:
contents = file_object.read()
print(contents)
复制代码

运行结果:

It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife.

要使用文件,就必须先打开它,所以这里使用了函数 open() 。该函数 open() 接受一个参数: 即要打开的文件路径。 如果只有文件名,那么 Python 会在当前执行文件的所在目录来查找指定的文件。

关键字 with 会在程序不再需要访问文件或出现异常的情况下,关闭文件 。 我们只管打开文件使用它即可,Python 是不是很贴心哦O(∩_∩)O~

2 文件路径

函数 open(),入参如果只有文件名,那么 Python 会在当前执行的 .py 文件的所在目录中,查找文件 。

也可以提供文件路径 , 让 Python 到指定的文件目录中去查找所需要的文件。

相对路径语法形如:

with open('xxxnovel.txt') as file_object:
复制代码

一般来说,在 Windows 系统中, 在文件路径中使用反斜杠( ) ,Linux 与 OS 使用的是是斜杠( / ) 。实际测试,在 Windows 7+ 系统中,斜杠与反斜杠都支持。

当然,也可以使用绝对路径。注意: 如果使用的是绝对路径,那么在 Windows 7+ 系统中,文件路径必须使用反斜杠。形如:

with open('F:/python_projects/xxx/novel.txt') as file_object:
复制代码

因为绝对路径一般较长, 所以一般将其存储在变量中,然后再传入 open() 函数。

3 逐行读取

可以对文件对象使用 for 循环,逐行读取文件内容。

with open(file) as file_object:
for line_content in file_object:
print(line_content.rstrip())
复制代码

运行结果与之前的 “一次性读取” 示例结果相同。在 txt 文件中, 每行的末尾都存在一个看不见的换行符。消除为了去除这些多余的空白行,我们使用了 rstrip() 函数。rstrip() 函数会删除 string 字符串末尾的空格。

4 在 with 外访问

使用关键字 with 时, open() 函数所返回的文件对象,只能在 with 代码块中使用 。 如果需要在 with 代码块之外,访问文件的内容, 那么可以在 with 代码块之内,将文件中的各行内容存储在列表变量中,然后就可以在 with 代码块之外,通过该列表变量,来访问文件内容啦O(∩_∩)O~

with open(file) as file_object:
contents = file_object.readlines()
content_str=''
for content in contents:
content_str+=content
print('content_str='+content_str)
print('len='+str(len(content_str)))
复制代码

运行结果:

content_str=It is a truth universally acknowledged, that a single man in possession of a good fortune, must be in want of a wife. len=117

注意: 读取文本文件时, Python 会将文件中的所有文本都解释为字符串 。 如果我们需要将其中的文本解释为数字,那么就必须使用函数 int() 或者 float(),将其转换为整数或者浮点数。

Python 对数据量没有大小限制, 只要我们的系统内存足够多O(∩_∩)O~

转载于:https://juejin.im/post/5cb1a4946fb9a068736d3083

最后

以上就是体贴蜗牛为你收集整理的说说在 Python 中,如何读取文件中的数据的全部内容,希望文章能够帮你解决说说在 Python 中,如何读取文件中的数据所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(34)

评论列表共有 0 条评论

立即
投稿
返回
顶部