man = [] #创建列表
other = []
try:
data = open('sketch.txt')
for each_line in data:
try:
(role, line_spoken) = each_line.split(':', 1)
line_spoken = line_spoken.strip() #去除空白符
if role == 'Man':
man.append(line_spoken) #将man的话添到man[]
elif role == 'Other Man':
other.append(line_spoken) #将other man的话添到列表
except ValueError: #异常处理
pass
if 'data' in locals(): #调用方法locals()判断‘data’文件是否存在当前环境中
data.close()
except IOError: #I/O错误处理
print('The data file is missing!')
#将处理的数据写入man1.txt和other2.txt文档
try:
with open('man_data.txt', 'w') as man_data: #调用with方法利用Python内置的context management protocol(上下文管理协议)自动判断文件是否关闭并处理未关闭文件
print(man, file=man_data)
with open('other_data.txt', 'w') as other_data:
print(other, file=other_data)
except IOError as err:
print('file error:' + str(err))