使用Python写入内容到制定文件

 更新时间:2023年07月05日 08:47:44   作者:小邑走天下  
这篇文章主要介绍了使用Python写入内容到制定文件,Python只能将字符串写入文本文件,要将数值数据存储到文本文件中,必须先使用函数str()将其转换为字符串格式,需要的朋友可以参考下

写入文件

利用文件对象提供的 write() 方法,可以向文件中写入内容。 语法格式如下: file.write(string) 其中,fle 为打开的文件对象: string 为要写入的字符串。

f=open('word.txt', 'a+')
# 以追加的方式打开文件
# 将信息写入文件
f.write("有时候你觉得特别难,也许因为有更大的收获')
f.close()
# 关闭文件

有的时候,需要以指定的编码格式(如UTF-8)将内容写入文件。 如将书名“Python 实效编程百例写入到book.txt 后保存编码格式为“utf-8”, 实现代码如下:

with open('book.txt','w', encoding='utf-8') as file:
	file.write('Python 实效编程百例'+'\n')
# 写入内容后换行就要加\n

使用with 语句处理文件

打开文件后,要及时将其关闭。如果忘记关闭可能会出现意想不到的问题。 另外,如果在打开文件时抛出了异常,那么将导致文件不能被及时关闭。 无论是否抛出异常,with 语句执行完毕后关闭已经打开的文件。 with 语句的语法格式如下:

with expression as target:
	with-body

参数说明: expression:用于指定一个表达式,这里可以是打开文件的 open()函数 target:用于指定一个变量,并且将expression 的结果保存到该变量中 with-body: 用于指定 with 语句体,其中可以是执行 with 语句后相关的一些操作语句。 如果不想执行任何语句,可以直接使用 pass 语句代替。

print("\n","="*10,"Python经典应用","="*10)
with open('message.txt', 'w') as file:
# 创建或打开保存Python经典应用信息的文件
    pass
print("\n 即将显示..... \n")

规避常见的错误操作

1.规避文件不存在的陷阱

在默认的情况下,使用 open()函数打开一个不存在的文件,会抛出异常错误。 可以使用 os.path模块提供的 exists()函数判断文件是否存在。 例如读取文件 book.txt,如果文件存在,读取文件并输出内容; 如果文件不存在,则新建 book.txt 文件。实现代码如下:

import os
if os.path.exists('book.txt'):
    with open('book.txt', 'r') as file:
        for line in file:
            print(line)
else:
    file =open('book.txt')
    file.close()

2.规避读取不同编码格式文件时的陷阱

由于文件保存格式的不同,在读取文件时如果格式不正确,将会出现乱码问题或抛出异常。 1.在打开文件时指定文件的格式 例如读取文件格式为“gbk”的文件(“maintxt”),在打开文件时设置编码格式为“encoding=‘GBK’”

try:
    with open('book.txt', 'r',encoding='GBK') as file:
        for line in file:
            print(line)
except Exception:
    with open('book.txt', 'r', encoding='UTF-8') as file:
        for line in file:
            print(line,2)

3.以二进制打开文件,然后对读取的内容进行编码

用 Python 读取文件经常会出现字符编码错误,用二进制方式打开文件,就不会出现错误了。但需要在读取文件时进行编码。 首先使用 isimstance()函数判断读取的内容是否为 str 类型,如果是,则直接读取文件内容.如果不是,则使用异常处理程序尝试使用“utf-8”方式解码,否则采用“gbk”方式解码。实现代码如下:

with open('book.txt', 'rb') as file:
    lines = file.read()
    if isinstance(lines, str):
        print(new)
    else:
        try:
            new = lines.decode("utf-8")
            print(new)
        except:
            try:
                new = lines.decode("gbk")
                print(new)
            except:
                pass

4.强制以某种模式读取文件,忽略编码错误

有时我们需要以某种格式读取指定文件,而忽略编码错误带来的乱码问题。例如以二进制方式读取文件“maintxt”中的内容,然后以“gbk”编码强制读取该文件,实现代码如下:

with open('book.txt', 'rb') as file:
    article = file.read()
    new = article.decode('gbk',errors='ignore')
    print(new)

到此这篇关于使用Python写入内容到制定文件的文章就介绍到这了,更多相关Python写入文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python+matplotlib绘制多子图的方法详解

    Python+matplotlib绘制多子图的方法详解

    Matplotlib是Python中最受欢迎的数据可视化软件包之一,它是 Python常用的2D绘图库,同时它也提供了一部分3D绘图接口。本文将详细介绍如何通过Matplotlib绘制多子图,需要的可以参考一下
    2022-07-07
  • 一文解密Python的弱引用

    一文解密Python的弱引用

    弱引用在很多语言中都存在,最常用来解决循环引用问题,本文就来和大家一起探索一下python中的弱引用,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-09-09
  • Python Django教程之实现天气应用程序

    Python Django教程之实现天气应用程序

    Django提供了一个基于Python Web框架的Web框架,允许快速开发和干净,务实的设计。在本教程中,我们将学习如何创建一个使用Django作为后端的天气应用程序,感兴趣的可以尝试一下
    2022-10-10
  • 如何设置PyCharm中的Python代码模版(推荐)

    如何设置PyCharm中的Python代码模版(推荐)

    这篇文章主要介绍了如何设置PyCharm中的Python代码模版,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • Python pandas求方差和标准差的方法实例

    Python pandas求方差和标准差的方法实例

    标准差(或方差),分为 总体标准差(方差)和 样本标准差(方差),下面这篇文章主要给大家介绍了关于pandas求方差和标准差的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2021-08-08
  • python 代码实现k-means聚类分析的思路(不使用现成聚类库)

    python 代码实现k-means聚类分析的思路(不使用现成聚类库)

    这篇文章主要介绍了python 代码实现k-means聚类分析(不使用现成聚类库),本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • 代码讲解Python对Windows服务进行监控

    代码讲解Python对Windows服务进行监控

    本篇文章给大家分享了通过Python对Windows服务进行监控的实例代码,对此有兴趣的朋友可以学习参考下。
    2018-02-02
  • 搞定这套Python爬虫面试题(面试会so easy)

    搞定这套Python爬虫面试题(面试会so easy)

    Python 是一门开源的解释性语言,相比 Java C++ 等语言,Python 具有动态特性,非常灵活。这篇文章主要介绍了搞定这套Python爬虫面试题,面试会so easy,需要的朋友可以参考下
    2019-04-04
  • Python中通过@classmethod 实现多态的示例

    Python中通过@classmethod 实现多态的示例

    这篇文章主要介绍了Python中通过@classmethod 实现多态,python中通常使用对象创建多态模式,python还支持类创建多态模式,下面通过一个例子展示它如何实现多态,需要的朋友可以参考下
    2022-11-11
  • Python给定一个句子倒序输出单词以及字母的方法

    Python给定一个句子倒序输出单词以及字母的方法

    今天小编就为大家分享一篇Python给定一个句子倒序输出单词以及字母的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12

最新评论