编辑文本文件,然后显示它

时间:2014-12-17 04:02:17

标签: python

在我的代码中,我想将单词插入用户的文本文件中。所以我在文本文件中有这些单词必须由用户输入替换,这里的字符串必须在文件中替换,形容词 plural_noun 名词

file1 = open('Sample.txt', 'w')
*adjective*,*plural_noun*,*noun*,*verb*,*male_first_name* = [
  line.strip() for line in open('Sample.txt')]
for t in *adjective* :
  print(input("enter an adjective: ", file=file1))
  print(input("enter an plural noun: ", file=file1))
  print(input("enter an verb: ", file=file1))
file1.close()

1 个答案:

答案 0 :(得分:0)

一些让你入门的东西......

file1 = open('Sample.txt', 'r') 
text = file1.read()
while (text.find('*replace*') != -1):
    inp = raw_input("enter some text to replace: ");
    text = text.replace('*replace*', inp, 1)
print(text)

如果Sample.txt包含This is some text to *replace*且用户输入为xyz,则此代码将打印:

This is some text to xyz

让我们一点一点地介绍它:

  1. file1 = open('Sample.txt', 'r')打开文件进行阅读('r'表示"阅读")。

  2. text = file1.read()读取文件的内容并将其放入变量text

  3. while (text.find('*replace*') != -1):查找字符串*replace*的出现次数,并且只要找到一个,就会继续使用缩进的命令。

  4. inp = raw_input("enter some text to replace: ")仅在剩余的*replace*出现时运行,获取用户输入并将其放入变量inp

  5. text = text.replace('*replace*', inp, 1),只有在剩余的*replace*出现时才会运行,用用户输入替换下一次出现的*replace*,覆盖旧文本。< / p>

  6. print(text),一旦所有出现的*replace*都被用户输入替换,就会打印出新文本。

  7. 这不是你如何编写一个包含许多不同*string*字符串的高效程序,但希望它能引导你走向正确的方向并且在跑步之前走路通常是一个好主意。

    有很好的online Python documentation,你也可以使用pydoc工具 - 例如来自命令行的pydoc str.replace