70、创建文件各行内容列表&使用文件内容

创建一个包含文件各行内容的列表

        使用关键字with 时,open() 返回的文件对象只在with 代码块内可用。如果要在with 代码块外访问文件的内容,可在with 代码块内将文件的各行存储在一个列表中,并在with 代码块外使用该列表。

      在with 代码块內访问文件与在with 代码块外访问文件的比较:

图片发自简书App

      使用方法readlines() 从文件中读取每一行,并将其存储在一个列表中;接下来,该列表被存储到变量lines 中;在with 代码块外,我们依然可以使用这个变量

使用文件内容

        使用关键字with时,用open()打开文件并返回文件对象,再使用readlines()读取文件每行的内容并存在列表lines中,接下来就可以使用文件内容了。

        先创建一个空字符串pi_string,使用for循环把读取到每一行的内容存放在pi_string中,同时删除每一行后面的换行符,最后打印结果并统计字符串的长度。

图片发自简书App

        结果发现字符串仍然有空格且字符串长度为36,原因是我们访问的文件pi_digits.txt中,每一行还包含左边的空格,存储在pi_string时把左边的空格也一起放进来了,但是使用rstrip()函数只是删除每一行后面的换行符导致的空格,读取文件中每行左边的空格并未删除,所以要把rstrip()函数换成strip()删除所有的空格。

图片发自简书App

      结果显示没有空格了,而且字符串的长度为32

注意事项:

        读取文件时,python会把所有的文本解读为字符串。如果读取的是数字,并把它当做数值使用,则必须使用函数int()转换为整数,或使用函数float()转换为浮点数。

例如:我把读取到的圆周率乘2

图片发自简书App

        结果把读取到的圆周率打印两遍,当我使用函数float()则运行正确

图片发自简书App

学习笔记

      使用方法replace()将字符串中的特定单词都替换为另一个单词,下面示例中将 "favorite language is" 替换为 "like"

图片发自简书App

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容