2
使用Python自動化煩人的東西在第8章中有一個項目: 創建一個Mad Libs程序,該程序讀入文本文件並允許用戶在ADJECTIVE,NOUN,ADVERB或VERB出現在文本文件中。使用Python的Mad Lib程序
它需要創建新的文本文件並將結果打印到屏幕上。
我的解決方案導致創建一個空白的新文件,並在終端中不顯示任何內容。我使用Python 3.5.1在OS X
#! /usr/bin/env python3
with open("/Users/Maverick/madLibProject1.txt", "wt") as fout:
with open("/Users/Maverick/madLibProject.txt", "r") as fin:
for line in fin:
if line == "ADJECTIVE":
adj == input('Enter an adjective:\n')
fout.write(line.replace('ADJECTIVE', adj))
elif line == "NOUN":
nou == input('Enter a noun:\n')
fout.write(line.replace('NOUN', nou))
elif line == "ADVERB":
adv = input('Enter an adverb:\n')
fout.write(line.replace('ADVERB', adv))
elif line == "VERB":
ver = input('Enter a verb:\n')
fout.write(line.replace('VERB', ver))
fname = "/Users/Maverick/madLibProject1.txt"
project = open(fname, 'r')
data = project.read()
print(data)
'madLibProject.txt'的內容是什麼? – Chris
你的問題是什麼?順便說一句,如果一個輸入行包含比「NOUN」等更多的單詞,那麼'=='測試不會做你想做的事情,特別是。如果該行包含多個替代詞。 – Jerry101
如果你在調試器中逐步完成程序,或者至少做一個手動模擬程序運行的準確工作,一步一步,你會發現多個問題。 – Jerry101