0
문서 제목 목록에서 DITA keydef 목록을 신속하게 만들려고합니다. 제목이 "장치 사용 설명서"의 경우 는,이 같은 keydef을 만들려면 :줄에서/n을 제거하고 동시에 파이썬에서 해당 줄을 바꾸십시오.
<keydef keys="Device_User_Guide" class="+ map/topicref mapgroup-d/keydef ">
<topicmeta class="- map/topicmeta ">
<keywords class"- topic/keywords ">
<keyword class="- topic/keyword ">Device User Guide</keyword>
</keywords>
</topicmeta>
</keydef>
칭호는 그들 각각의 새로운 라인 titles.txt 파일에서 추출된다. 이 때문에 내 출력이있다, 마지막에 \ n을을 포함하도록 키 (Device_User_Guide를) 원인 :
<keydef keys="Device_User_Guide
" class="+ map/topicref mapgroup-d/keydef ">
<topicmeta class="- map/topicmeta ">
<keywords class"- topic/keywords ">
<keyword class="- topic/keyword ">Device User Guide</keyword>
</keywords>
</topicmeta>
</keydef>
내가하지만, 밑줄 공간을 교체하고 키워드 rstrip 사용하는 관리 나는를 제거 할 수있는 방법 바꾸기 작업을 할 때 동시에 줄 바꿈 문자를 사용합니까? 여기 내 코드는 다음과 같습니다.
title = open('titles.txt', 'r')
keydefs = open('keydefs.txt', 'w')
for line in title:
keydefs.write('<keydef keys="%s" class="+ map/topicref mapgroup-d/keydef ">\n <topicmeta class="- map/topicmeta ">\n <keywords class"- topic/keywords ">\n <keyword class="- topic/keyword ">%s</keyword>\n </keywords>\n </topicmeta>\n</keydef>' % (line.replace(" ","_"), line.rstrip()))