1.Python操作txt文本

这篇具有很好参考价值的文章主要介绍了1.Python操作txt文本。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.Python读取一个txt文件的内容并将其写入到另一个txt文件

# -*- encoding:gb2312 -*-
import chardet

def read_write_txt(inputpath, outputpath):
    with open(
            inputpath,
            'rb',
    ) as file:     # rb: 以二进制格式打开一个文件用于只读。
        raw_data = file.read()   # 读出内容用到的是read函数。这个函数的工作原理是依靠一个指针来对内容进行访问的。read方法会用一个指针将文本内容从上到下扫面一遍并且将其输出到内存。扫描完后它的指针是停留在末尾处的。也就是说,如果我们想用read方法访问同一个文件两次,是不可行的。
        detected_encoding = chardet.detect(raw_data)['encoding']  # 返回文件的编码格式。
    with open(inputpath, 'r', encoding=detected_encoding) as infile:
        with open(outputpath, 'w', encoding=detected_encoding) as outfile:
            # # 第一种:读取所有行
            # data1 = infile.readlines()
            # print(data1)
            # # 输出:['好好学习\n', '天天向上\n', '我是一只鱼\n', '哈哈哈']

            # 第二种:每行分开读取
            data2 = []
            for line in infile:
                data_line = line.strip("\n")  # 去除首尾换行符
                data2.append(data_line)
            print(data2)
            # 输出:['好好学习', '天天向上', '我是一只鱼', '哈哈哈']

            # 写入方法
            for line in data2:
                # data = '' + '\t'.join(str(i) for i in line) + '\n'  # 用\t隔开
                data = '' + ''.join(str(i) for i in line) + '\n'  # 用空格隔开
                outfile.write(data)


if __name__ == "__main__":
    input_file = '1.txt'  # 待读取的文件
    output_file = 'ansi.txt' # 写入的文件
    read_write_txt(input_file, output_file)

待读入文件1.txt

1.Python操作txt文本,python小脚本,python,自然语言处理

写入后的文件ansi.txt

1.Python操作txt文本,python小脚本,python,自然语言处理

2.Python读取一个未知编码的文件并将其设置为指定编码格式

要在Python中读取一个未知编码的文件并将其设置为另一种编码格式,可以使用chardet模块来检测文件的编码格式,然后使用Python内置的编码库来进行转换。

使用该代码前需要安装chardet和codecs库

pip install chardet
pip install codecs

首先,你可以使用chardet模块来检测文件的编码格式。你可以使用以下代码来完成这个步骤:

# -*- encoding:gb2312 -*-
import chardet
import codecs
def save_as_specified_encoding(input_file, output_file, output_encoding):  #input_file为未知编码文件,output_file为编码后的文件,output_encoding为编码格式
    with open(
            input_file,
            'rb',
    ) as file:     # rb: 以二进制格式打开一个文件用于只读。
        raw_data = file.read()   # 读出内容用到的是read函数。这个函数的工作原理是依靠一个指针来对内容进行访问的。read方法会用一个指针将文本内容从上到下扫面一遍并且将其输出到内存。扫描完后它的指针是停留在末尾处的。也就是说,如果我们想用read方法访问同一个文件两次,是不可行的。
        detected_encoding = chardet.detect(raw_data)['encoding']  # 返回文件的编码格式。

    with codecs.open(input_file,
                     'r',
                     encoding=detected_encoding,
                     errors='ignore') as input_file:
        content = input_file.read()
   # codecs.open(filename, mode='r', encoding=None, errors='strict', buffering=1)  使用给定的 mode 打开已编码的文件并返回一个 StreamReaderWriter的实例,提供透明的编码/解码;与内置函数open类似。

    with codecs.open(output_file,
                     'w',
                     encoding=output_encoding,
                     errors='ignore') as output_file:
        output_file.write(content) 

    if __name__ == "__main__":
    input_file = '1.txt'   # 未知编码文件
    output_file = 'ansi.txt' # 编码后的文件
    output_encoding = 'ansi' # 设置的编码
    save_as_specified_encoding(input_file, output_file, output_encoding)

原始文件1.txt

1.Python操作txt文本,python小脚本,python,自然语言处理

编码后的文件ansi.txt

1.Python操作txt文本,python小脚本,python,自然语言处理

3.Python实现txt文件中字符串的替换

# -*- encoding:gb2312 -*-
def replace_txt(inputpath, outputpath):

    # 打开原始文件和目标文件
    with open(inputpath, 'r') as file:
        content = file.read()

    # 替换字符:和:
    new_content = content.replace(':', ' ')
    new_content = new_content.replace(':', ' ')
    # 将替换后的内容写入目标文件
    with open(outputpath, 'w') as file:
        file.write(new_content)


if __name__ == "__main__":
    input_path = 'ansi.txt'    # 待处理的txt文件
    output_path = 'result.txt'    # 替换字符后的txt文件
    replace_txt(input_path, output_path)

ansi文件(原始文件)

1.Python操作txt文本,python小脚本,python,自然语言处理

result文件 (替换后的文件)

1.Python操作txt文本,python小脚本,python,自然语言处理文章来源地址https://www.toymoban.com/news/detail-687840.html

到了这里,关于1.Python操作txt文本的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 【自然语言处理】用Python从文本中删除个人信息-第二部分

    【自然语言处理】用Python从文本中删除个人信息-第二部分

    做一个简单介绍, 酒架 年近48 ,有20多年IT工作经历,目前在一家500强做企业架构.因为工作需要,另外也因为兴趣涉猎比较广,为了自己学习建立了三个博客,分别是【全球IT瞭望】,【架构师酒馆】和【开发者开聊】,有更多的内容分享,谢谢大家收藏。 企业架构师需要

    2024年02月04日
    浏览(12)
  • 如何用python做自然语言处理

    如何用python做自然语言处理

    如何用python做自然语言处理 使用Python进行自然语言处理(NLP)是非常常见和强大的。以下是一些基本步骤: 安装所需的库: 首先,您需要安装一些用于自然语言处理的Python库,如NLTK(自然语言工具包)、spaCy、TextBlob、gensim等。您可以使用 pip 命令来安装它们,例如: pip

    2024年02月14日
    浏览(45)
  • 自然语言文本分类模型代码

            以下是一个基于PyTorch的文本分类模型的示例代码,用于将给定的文本分为多个预定义类别:         该模型将输入的文本作为整数序列传递给嵌入层,然后通过多层LSTM层进行处理,最终输出每个类别的预测概率。         在训练模型之前,需要将文本序列

    2024年02月14日
    浏览(9)
  • 自然语言处理—文本分类综述/什么是文本分类

    自然语言处理—文本分类综述/什么是文本分类

    最近在学习文本分类,读了很多博主的文章,要么已经严重过时(还在一个劲介绍SVM、贝叶斯),要么就是机器翻译的别人的英文论文,几乎看遍全文,竟然没有一篇能看的综述,花了一个月时间,参考了很多文献,特此写下此文。 https://www.processon.com/mindmap/61888043e401fd453a21e

    2023年04月08日
    浏览(13)
  • 自然语言之文本预处理

    自然语言之文本预处理

    概念 分词就是将连续的字序列按照一定的规范重新组合成词序列的过程。在英文的行文中,单词之间是以空格作为自然分界符的,而中文只是字、句和段能通过明显的分界符来简单划界,唯独词没有一个形式上的分界符。分词过程就是找到这样分界符的过程. 作用 词作为语言

    2024年02月06日
    浏览(13)
  • Python自然语言处理:NLTK入门指南

    自然语言处理(Natural Language Processing,NLP)是指计算机处理人类语言的领域。它是一门多学科交叉的学科,将计算机科学、人工智能、语言学等诸多学科的理论和方法融合在一起,将人类语言转化为计算机所能理解的形式,实现对人类语言的自动处理、理解和生成。NLP可以应

    2024年02月10日
    浏览(43)
  • 自然语言处理-文本表示: Embedding技术

    目录 I. 引言 A. 文本表示介绍 B. 引入Embedding技术的重要性和应用领域 II. 传统文本表示方法 A. One-Hot编码 B. 词袋模型 C. TF-IDF III. 什么是文本表示-Embedding A. 定义和概念 B. Embedding的目标和作用 IV. 常见Embedding技术 A. Word2Vec 1. CBOW模型 2. Skip-gram模型 3. 结构与训练方法 B. GloVe 1. 全局

    2024年02月16日
    浏览(47)
  • 【自然语言处理】实验3,文本情感分析

    【自然语言处理】实验3,文本情感分析

    清华大学驭风计划课程链接  学堂在线 - 精品在线课程学习平台 (xuetangx.com) 代码和报告均为本人自己实现(实验满分),只展示主要任务实验结果,如果需要详细的实验报告或者代码可以私聊博主 有任何疑问或者问题,也欢迎私信博主,大家可以相互讨论交流哟~~ 情感分析

    2024年02月19日
    浏览(10)
  • 掌握NLTK:Python自然语言处理库中级教程

    在之前的初级教程中,我们已经了解了NLTK(Natural Language Toolkit)的基本用法,如进行文本分词、词性标注和停用词移除等。在本篇中级教程中,我们将进一步探索NLTK的更多功能,包括词干提取、词形还原、n-gram模型以及词云的绘制。 词干提取是一种将词语简化为其基本形式

    2024年02月14日
    浏览(48)
  • 深入NLTK:Python自然语言处理库高级教程

    在前面的初级和中级教程中,我们了解了NLTK库中的基本和进阶功能,如词干提取、词形还原、n-gram模型和词云的绘制等。在本篇高级教程中,我们将深入探索NLTK的更多高级功能,包括句法解析、命名实体识别、情感分析以及文本分类。 句法解析是自然语言处理中的一项重要

    2024年02月14日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包