Mail Merge Challenge
程式碼實現 Method 1:
with open('Input/Names/invited_names.txt') as f:
names = f.readlines()
for name in names:
name = name.strip('\\n')
letter_title = f'letter_for_{name}.txt'
with open('Input/Letters/starting_letter.txt') as f:
contents = f.readlines()
with open(f'Output/ReadyToSend/{letter_title}', mode='w') as f:
contents[0] = contents[0].replace('[name]', name)
f.writelines(contents)
程式碼實現 Method 2:
with open('Input/Letters/starting_letter.txt') as f:
contents = f.readlines()
with open('Input/Names/invited_names.txt') as f:
names = f.readlines()
names.insert(0, '[name]')
for i in range(0, len(names)-1):
name = names[i+1].strip('\\n')
letter_title = f'letter_for_{name}.txt'
with open(f'Output/ReadyToSend/{letter_title}', mode='w') as f:
contents[0] = contents[0].replace(names[i].strip('\\n'), name)
f.writelines(contents)
Absoulate Path 路徑寫法需注意的地方
- C:\User\user\python → 系統路徑
- 但\u在python會被視為Unicode-Escape編碼的跳脫字元,因此可寫成以下寫法
- C:\\User\\user\\python
- r'C:\User\user\python'
- 或是避免使用到跳脫字元的符號(\a、\t等)
- 亦可寫成C:/User/user/python