【问题标题】:importing external ".txt" file in python在 python 中导入外部“.txt”文件
【发布时间】:2015-08-26 09:31:33
【问题描述】:

我正在尝试导入包含大约 10 个单词的列表的文本。

import words.txt

这样不行…… 无论如何,我可以在不显示的情况下导入文件吗?

Traceback (most recent call last):
File "D:/python/p1.py", line 9, in <module>
import words.txt
ImportError: No module named 'words'

感谢任何形式的帮助。

【问题讨论】:

  • 您实际上不能这样做。如果你想得到这些词,你必须将它们读入你的程序。您可以使用this question 了解如何做到这一点。
  • import 用于包含库函数。要读取文件,请参阅this
  • 你试过谷歌搜索“python import”吗?
  • 你想对单词列表做什么?你想创建一个单词列表,还是只打印出它们在文件中出现的样子?文件是什么样的 - 单词是否以逗号分隔、位于不同的行等?

标签: python file import


【解决方案1】:

您可以导入模块,但不能导入文本文件。如果要打印内容,请执行以下操作:

打开一个文本文件进行阅读:

f = open('words.txt', 'r')

将内容存储在变量中:

content = f.read()

打印此文件的内容:

print(content)

完成后关闭文件:

f.close()

【讨论】:

  • 如果 'words.txt' 与 python 文件位于同一目录中,它将打开。如果您需要从其他地方获取文件,只需使用它的路径名,例如 '/Users/username/Desktop/sample.txt'
【解决方案2】:

由于无法导入 .txt 文件,建议以这种方式阅读单词。

list_ = open("world.txt").read().split()

【讨论】:

    【解决方案3】:

    “import”关键字用于附加在当前 python 程序外部创建的 python 定义。因此,在您的情况下,您只想读取包含一些文本的文件,请使用:

    text = open("words.txt", "rb").read()

    【讨论】:

      【解决方案4】:

      numpy 的 genfromtxt 或 loadtxt 是我使用的:

      import numpy as np
      ...
      wordset = np.genfromtxt(fname='words.txt')
      

      This 让我朝着正确的方向前进并解决了我的问题。

      【讨论】:

        【解决方案5】:

        这个答案是从infraredSplitting large text file by a delimiter in Python的答案修改而来的

        with open('words.txt') as fp:
            contents = fp.read()
            for entry in contents:
                # do something with entry  
        

        【讨论】:

          【解决方案6】:

          Import 使您可以访问程序中的其他模块。您不能决定导入文本文件。如果要从同一目录中的文件中读取,可以查看this。这是另一个关于它的 StackOverflow post

          【讨论】:

            猜你喜欢
            • 2020-12-22
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2021-02-26
            • 2015-05-04
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多