from docx import Document
alphaDic = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','!','?','.','~',',','(',')','$','-',':',';',"'",'/']
doc = Document('realexample.docx')
docIndex = 0
def delete_paragraph(paragraph):
p = paragraph._element
p.getparent().remove(p)
p._p = p._element = None
while docIndex < len(doc.paragraphs):
firstSen = doc.paragraphs[docIndex].text
rep_dic = {ord(k):None for k in alphaDic + [x.upper() for x in alphaDic]}
translation = (firstSen.translate(rep_dic))
removeExcessSpaces = " ".join(translation.split())
if removeExcessSpaces != '':
doc.paragraphs[docIndex].text = removeExcessSpaces
else:
delete_paragraph(doc.paragraphs[docIndex])
docIndex -=1 # go one step back in the loop because of the deleted index
docIndex +=1
그래서 시험 문서는이파이썬 3 - 특정 라인에 빈 단락을 제거하는 방법 - pythondocx
Hello
你好
Good afternoon
朋友们
Good evening
晚上好
처럼 보인다 그리고 난 다음이 결과를 달성하기 위해 노력하고있어.
你好
朋友们
晚上好
지금 코드는 모든 빈 단락과 과도한 공백을 제거하고 처리하므로 여기에 다소 붙어 있습니다. 나는 영어 단어로 인한 줄 바꿈 만 지우고 싶다. 당신은, 영어 단어 "WORD"를 찾아 "\ n을"로를 추가 한 다음 문서에서이 새로운 결과 "WORD \ 없음"을 제거하면, 영어 단어를 찾고 무엇을 할 수 있는지
你好
朋友们
晚上好
if 문에 다른 조건을 추가하여 firstSen이 비어 있는지 확인한 다음 파일에 그대로 쓸 것입니다 –
비어 있으면 단락이 지워집니다 else 문에 있습니다. 루프는 제거하고 싶지 않은 줄 바꿈 (빈 단락)을 포함하여 모든 단락을 처리합니다. –
첫 번째 파일의 빈 줄을 번역 된 파일에 쓰는 또 다른 조건을 작성하는 것이 좋습니다. 그래서 당신은'removeExcessSpaces! = '':'if'removeExcessSpaces! = ''또는 firstSen == '':'로 변경할 수 있습니다. 그런 식으로 빈 줄이 원래 파일 ('firstSen == ''')에서 나온 것인지, 그리고 다른 파일에서와 같이 비어있는 줄이 비어 있는지 (원인이 중요하지 않은 경우) 비어있는 줄을 쓰는지를 말합니다. –