【问题标题】:When reading files in Python (on mac) the printed out text is incorrect在 Python(在 Mac 上)中读取文件时,打印出的文本不正确
【发布时间】:2015-05-24 08:56:10
【问题描述】:

我正在尝试一个简单的命令来打开和读取文件。我创建了一个文本编辑文件并将其保存为 test.txt(此文件上有不相关的文本)。当我运行我的程序时,没有错误并且执行了打印命令,除了打印了错误的信息。这是我的代码:

f = open("test2.docx","r")
line1 = f.readline()
line2 = f.readline()
line3 = f.readline()
print line1, line2, line3

这是写在文本文件中的内容:

COF180;10;40
COF181;10;90
PHF110;15;73
PHF210;15;81

这是程序打印出来的:

{\rtf1\ansi\ansicpg1252\cocoartf1344\cocoasubrtf720
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}

这似乎是关于文本本身的某种隐藏代码?请帮助我不知道为什么会这样。如何让它打印该文件中的实际文本?

【问题讨论】:

  • 你能生成你用来读取文件的代码吗?什么是输入,什么是“错误”的输出 - 为什么它不是你所期望的......等等......
  • 当您说“文本文件”时,您实际上是指“.txt”文件,还是指“.doc”或“.rtf”等文件?因为这看起来很像某种形式的富文本的格式说明符。
  • ^ 这是实际的问题。您使用的不是真正的纯文本文件。更改文件扩展名不会转换文件类型。
  • 如果您使用的是TextEdit,请从菜单栏中选择Format -> Make Plain Text
  • @JackHayton 这些可能是在您编辑问题之前,当时您没有提供足够的信息。

标签: python


【解决方案1】:

如果您使用的是 Mac,并且必须对多个文件执行此操作,请使用 textutil 实用程序:

textutil -convert txt /path/to/files/*.rtf

这也适用于具有 .doc 扩展名的文件。

【讨论】:

    【解决方案2】:

    如果您使用的是 TextEdit,请从菜单栏中选择格式 -> 制作纯文本。

    【讨论】:

      猜你喜欢
      • 2015-10-08
      • 2017-05-12
      • 1970-01-01
      • 2013-03-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-26
      相关资源
      最近更新 更多