深度问答之提取语料2

遍历读取所有的yml文件的问答,然后写入question和answer文件中

#!/usr/bin/env python
# coding:utf8
# author:Z time:2018/9/12



import xlwt
import yaml

import os

def mkdir(path):
    # 去除首位空格
    path = path.strip()
    # 去除尾部  符号
    path = path.rstrip("\")

    # 判断路径是否存在
    # 存在     True
    # 不存在   False
    isExists = os.path.exists(path)

    # 判断结果
    if not isExists:
        # 如果不存在则创建目录
        # 创建目录操作函数
        os.makedirs(path)

        print(path + ' 创建成功')
        return True
    else:
        # 如果目录存在则不创建,并提示目录已存在
        print(path + ' 目录已存在')
        return False




yml_file_list=[]
path=os.path.dirname(os.path.abspath(__file__))
file_list=os.listdir(path)
for file in file_list:
    if file.endswith('yml'):
        yml_file_list.append(file)
        """
         循环创建文件夹
        """
        # # 定义要创建的目录
        # mkpath = "E:\chatterbot-corpus-master\chatterbot_corpus\data\chinese\" + file[:-4]
        # # 调用函数
        # mkdir(mkpath)

"""
[['谁是美国第37届总统?', '理查德·尼克松'], ['肯尼迪总统哪年遇刺身亡?', '1963'], ['太空竞赛是哪两个冷战对手之间,在20世纪航天能力的霸主地位上的竞争?', '苏联和美国.'], 
['第一颗人造地球卫星的名称是什么?', '斯普特尼克1号'], ['一个旋转盘,在它的转轴方向,不受倾斜和旋转的影响,它叫什么?', '陀螺.'], 
['哈勃太空望远镜,于1990年发射进入近地轨道,它是以什么美国天文学家命名的?', '爱德温·哈伯'], ['离银河系最近的大型星系叫什么?', '仙女座星系.'], 
['天佑女王是哪个国家的国歌?', '大不列颠联合王国'], ['凯尔特陆棚,是什么大陆的大陆架的一部分?', '欧洲'], ['海豚使用的一种感觉,类似于声纳,以确定附近的物品的位置和形状.它是什么', '回声定位']]
"""


for yml_file in yml_file_list:

    with open(yml_file, 'r', encoding="utf-8") as rf:
        ss = yaml.load(rf)
        aa=ss['conversations']

        question_index=1
        answer_index=1

        for i in aa:

            question=i[0]
            answer=i[1:]

            for j in answer:
                with open('answer', 'a+', encoding='utf8')as f:

                    f.write(j+'
')

                with open('question', 'a+', encoding='utf8')as f2:
                    f2.write(question + '
')
原文地址:https://www.cnblogs.com/z-x-y/p/9639750.html