Python使用文本文件作为输入和输出

时间:2018-12-02 14:44:55

标签: python

我对python还是陌生的,尽管我非常熟悉Java和C,并且我试图创建一个聊天机器人,当您使用它们时可以学习新单词。我有以下伪代码来存储它不知道的单词:

如果单词不在字典中,请转到添加单词 ... 附加词 取词并将其存储在字典文本文件中 字典文本文件中的换行符。

然后要读取并输出它,(现在)我只是让它从列表中选择一个随机词并将其插入句子字符串中。

麻烦是,我不知道在python中使用什么语法来输入和输出文件。

如果有人能指出我正确的方向,那就太好了。谢谢。

编辑:谢谢。 我用过

with open("file.txt") as f:
    lines = f.readlines()
print(lines[x])
print(lines[y])

1 个答案:

答案 0 :(得分:1)

在python中,用于打开文本文件的synthax如下:

file_object = open('filename', 'mode')

在这里,模式可以是以下任意一种:

  • 从文件的第一行开始从文件中读取的
  • 'r +'从文件的第一行开始读取,并能够 编辑信息
  • 'a'附加到文件末尾(无需修改现有文件 数据)
  • 'w'清除文件并写入文件,从第一行开始
  • 要添加,删除和截断文件的“ a +”或“ w +”,并能够从中读取

要逐行浏览文件,可以将此命令与'with'关键字一起使用,如下所示:

with open('file/path/and/name.txt', 'mode') as words_file:
    for line in words_file:
        # do something to the line

这可以确保在以'with'开头的块末尾,文件自动关闭。


在特定情况下,您需要以“ a +”模式打开文件,然后检查每行是否与给定单词匹配,如果不匹配,则使用命令将其附加到末尾'写':

words_file.write(word_to_be_added)

现在第二部分,选择一个随机词,您将整个文件读入一个字符串,然后使用类似的东西从其中选择一个随机词:

with open('file/path/and/name.txt', 'r') as words_file:
    words = (line.rstrip('\n') for line in words_file)
random_word = random.choice(words)

然后,您只需在输出句子中使用random_word。


This tutorial应该会提供更多详细信息。将来最好只搜索与您尝试做的事情相关的教程,然后自己尝试,然后在此处然后发布有关可能存在的问题或有关此问题的信息。