Pythonプログラミング入門・サンプル・チュートリアル

Pythonプログラミング入門・サンプル・チュートリアル

【Pythonプログラミング入門】「退屈なことはPythonにやらせよう」の演習。自己回答「8.10.2 作文ジェネレータ」

はじめに

「退屈なことはPythonにやらせよう」の演習問題「8.10.2 作文ジェネレータ」の自己回答です。

自己回答

# 作文ジェネレータ
# ADJECTIVE NOUN ADVERB VERB
import re

# adjectiveの入力
adjective = input('Enter an adjective\n')
noun = input('Enter a noun\n')
adverb = input('Enter a adverb\n')
verb = input('Enter a verb\n')

# ソーステキストファイルの読み込み
source_file_path = 'source_file.txt'
source_file = open(source_file_path)
result = source_file.read()
source_file.close()

# テキスト作成
result = re.sub(r'ADJECTIVE', adjective, result)
print('current結果:', result)
result = re.sub(r'NOUN', noun, result)
result = re.sub(r'(?!.*AD)VERB', verb, result)
result = re.sub(r'ADVERB', adverb, result)

# ファイル作成
create_file_path = 'create.txt'
create_file = open(create_file_path, 'w')
create_file.write(result)
create_file.close()

結果

元のテキスト

The ADJECTIVE panda walked to the NOUN and then VERB.A nearby NOUN was unaffected by these events.

変換後

The silly panda walked to the chandelier and then pickup truck.A nearby chandelier was unaffected by these events.

学習書籍