Pythonコードで、/ で区切られた複数行の文章を1行に結合し出力する。
■ Pythonコード1
・入力ファイル(.txt)
・出力ファイル(.txt)
def merge_text_lines(file_path, output_path):
■ Pythonコード1
・入力ファイル(.txt)
I am happy.
You are happy.
She is happy.
/
I am cold.
We are cold.
It is cold today.
・出力ファイル(.txt)
I am happy.You are happy.She is happy.
I am cold.We are cold.It is cold today.
・コード:def merge_text_lines(file_path, output_path):
with open(file_path, 'r', encoding='utf-8') as file:
# テキストファイルを読み込む
lines = file.read().splitlines()
merged_lines = []
current_sentence = []
for line in lines:
# '/'で区切られている場合
if line == '/':
# current_sentenceを結合して1行の文章にし、リストに追加
if current_sentence:
merged_lines.append(''.join(current_sentence))
current_sentence = []
else:
# '/'でない行はcurrent_sentenceに追加
current_sentence.append(line)
# 最後の文がある場合は追加
if current_sentence:
merged_lines.append(''.join(current_sentence))
# 各文章を改行で結合してファイルに書き込む
with open(output_path, 'w', encoding='utf-8') as output_file:
output_file.write('\n'.join(merged_lines))
# 入力ファイルと出力ファイルのパスを指定して実行
merge_text_lines('path_to_your_file.txt', 'output_file.txt')
■ Pythonコード2
・入力ファイル(.txt)
I am happy.
You are happy.
She is happy.
/
I am cold.
We are cold.
It is cold today.
・出力ファイル(.txt)[コンマ区切り]
I am happy.,You are happy.,She is happy.
I am cold.,We are cold.,It is cold today.
・コード2:
def merge_text_lines_with_commas(file_path, output_path):
with open(file_path, 'r', encoding='utf-8') as file:
# テキストファイルを読み込む
lines = file.read().splitlines()
merged_lines = []
current_sentence = []
for line in lines:
# '/'で区切られている場合
if line == '/':
# current_sentenceをカンマ区切りで1行の文章にし、リストに追加
if current_sentence:
merged_lines.append(','.join(current_sentence))
current_sentence = []
else:
# '/'でない行はcurrent_sentenceに追加
current_sentence.append(line)
# 最後の文がある場合は追加
if current_sentence:
merged_lines.append(','.join(current_sentence))
# 各文章を改行で結合してファイルに書き込む
with open(output_path, 'w', encoding='utf-8') as output_file:
output_file.write('\n'.join(merged_lines))
# 入力ファイルと出力ファイルのパスを指定して実行
merge_text_lines_with_commas('path_to_your_file.txt', 'output_file_with_commas.txt')
■ Pythonコード3
■ Pythonコード3
入力ファイル(.txt)[最後の行に/がある]
I am happy.
You are happy.
She is happy.
/
I am cold.
We are cold.
It is cold today.
/
・出力ファイル(.txt)[コンマ区切り]
I am happy.,You are happy.,She is happy.
I am cold.,We are cold.,It is cold today.
・コード3
・コード3
def merge_text_lines_with_commas(file_path, output_path):
with open(file_path, 'r', encoding='utf-8') as file:
# テキストファイルを読み込む
lines = file.read().splitlines()
merged_lines = []
current_sentence = []
for line in lines:
# '/'で区切られている場合
if line == '/':
# current_sentenceに文がある場合のみカンマ区切りで1行に結合し、リストに追加
if current_sentence:
merged_lines.append(','.join(current_sentence))
current_sentence = [] # 次の文のためにリストをリセット
else:
# '/'でない行はcurrent_sentenceに追加
current_sentence.append(line)
# 最後の'/'でcurrent_sentenceがリセットされているので、追加処理は不要
# 各文章を改行で結合してファイルに書き込む
with open(output_path, 'w', encoding='utf-8') as output_file:
output_file.write('\n'.join(merged_lines))
# 入力ファイルと出力ファイルのパスを指定して実行
merge_text_lines_with_commas('path_to_your_file.txt', 'output_file_with_commas.txt')