본문 바로가기

Python113

[추천] 파이썬 런타임에서도 엄청나게 빠른 누름틀 값 입력방법 안녕하세요? 이번 포스팅에서는 누름틀(필드)에 텍스트 삽입시 작업시간을 단축하는 노하우를 알려드리겠습니다. 아래아한글 자동화를 통해 가장 흔하고 손쉽게 자동화할 수 있는 업무라면 역시 "보고서 자동화" 아닐까 생각이 됩니다. 특히 엑셀파일이나, 이미지 파일, 혹은 폴더이름 등으로 입력할 자료를 정리해놓고 최종 순서로 hwp 보고서를 완성하는 일이 될 텐데요. 한 번이라도 실무 사이즈로 작업을 해 보신 분이라면 누름틀이나 셀 필드의 갯수가 굉장히 많을 것이라고 생각해요. (적당히 작은 갯수라면 이런 스킬을 찾지 않으셨겠죠.) 어떻게 삽입시간을 좀 단축할 수 없을까? 저도 자동화를 공부하던 초반에는 나름 고민했던 부분입니다. 필드에 값이 채워지는 과정을 하나부터 열까지 다 지켜보면서 나름 카타르시스를 느끼는.. 2022. 1. 27.
[QnA] 이미지 수백개를 삽입할 때 파이썬 for문으로 넣으면 너무 느려요! 제목: [문의] 파이썬에서 한글자동화 그림삽입 다이알로그 API 사용 방법 도움 요청 회사원 코딩님, 블로그에 공개된 InsertPicture 이용 한글자동화 소스 코드를 통해 많은 도움 받고 있습니다. 오늘은 실례를 무릅쓰고 방명록 대신 메일로 아래 내용 관련 조언 구하고자 합니다. (1)입력 메뉴에 있는 그림(P) PictureInsertDialog 호출하여 (2)특정 위치(디렉토리)에 있는 (3)모든 image(PNG) 파일을 Ctrl+A 선택하여 (4)일시에 한글 파일에 넣고자 합니다. InsertPicture의 경우 한 개의 파일만 삽입 가능한데 for loop 문을 사용하여 많은 양의 image 파일을 반복하여 삽입할 경우 다소 시간이 소요되더군요. 그리고 InsertPicture 파일 인자로.. 2022. 1. 24.
학점출력 예제를 C와 파이썬의 삼항연산자와 case문으로 각각 구현해보면? 학생의 전체 평균점수에 대한 학점을 출력하는 프로그램을 작성하자. 학생의 성적이 90점 이상이면 A, 80점 이상이면 B, 70점 이상이면 C, 50점 이상이면 D 그리고 그 미만이면 F다! (후략) - 열혈C프로그래밍 p.189, 문제 08-1[if~else문의 활용] 문제 3 if-else문을 연습할 때 열에 아홉 번은 튀어나오는 학점 예제라서 식상한 느낌이 들지만, switch-case문이나 삼항연산자 중첩의 장점이 더욱 크게 와닿는 가장 좋은 예제라고 생각한다. C의 if-else문으로는 #include "stdio.h" int main(void) { int score_num; char score; printf("학점을 입력하세요: "); scanf("%d", &score_num); if (sco.. 2022. 1. 21.
C와 Python의 삼항연산자 순서는 어떻게 다른가? 두 개의 정수를 입력 받아서 두 수의 차를 출력하는 프로그램을 구현해 보자. 단, 무조건 큰 수에서 작은 수를 뺀 결과를 출력해야 한다. 예를 들어서 입력된 두 수가 순서에 상관없이 12와 5라면 7이 출력되어야 하고, 입력된 두 수가 순서에 상관없이 4와 16이라면 12가 출력되어야 한다. 즉, 출력 결과는 무조건 0 이상이 되어야 한다. - 윤성우 열혈C프로그래밍 p.189, 문제 08-1 [if~else문의 활용] 중 문제 2 C의 삼항연산자는 참고로 필자는 C 입문자 수준으로, C나 C++의 고급문법에 대해 무지한 상태이다. 참고바람.. 위의 예제는 C의 삼항 연산자(Three Operand)를 활용해볼 수 있는 간단한 문제이다. if~else 문을 일부 대체할 수 있는 조건 연산자인 삼항 연산자.. 2022. 1. 21.
[Q&A](3/3) 제목을 {문서첫줄}.hwp로 저장하는 가장 쿨한 방법 지난 포스팅 [Q&A](1/3) 제목을 {문서첫줄}.hwp로 저장하는 가장 쿨한 방법 안녕하세요? 일상의 코딩, 일코입니다. 질문을 읽어보니 대략 이런 상황인 것 같습니다. 1. 아래와 같은 내용의 파일이 있고, 2. 이걸 아래와 같이 만들고 싶으신 것 같습니다. 여기서 잠깐 이 생 martinii.fun 2022. 1. 14.
[Q&A](2/3) 제목을 {문서첫줄}.hwp로 저장하는 가장 쿨한 방법 안녕하세요? 일상의 코딩, 일코입니다. 두 번째 시간입니다. 지난 시간에는 한/글을 열지 않고도 첫 줄을 불러오는 함수를 소개해드렸습니다. def 첫줄읽기(filepath): """한/글 문서 텍스트를 불러와서 엔터(\r\n)로 쪼갠 후 첫 번째 행 리턴""" with OleFileIO(filepath) as ole: # 한/글 파일 불러오기 text = ole.openstream('PrvText').read().decode('UTF-16').split("\r\n")[0] return text 이번에는 이 함수를 활용해서 파일들의 이름을 일괄 변경하는 프로그램을 만들어보겠습니다. 기존 파일목록은 아래와 같습니다. GUI를 열어서 파일목록을 선택한 후, 선택한 파일들의 PrvText 첫 번째 라인을 불러와.. 2022. 1. 14.
[Q&A](1/3) 제목을 {문서첫줄}.hwp로 저장하는 가장 쿨한 방법 안녕하세요? 일상의 코딩, 일코입니다. 질문을 읽어보니 대략 이런 상황인 것 같습니다. 1. 아래와 같은 내용의 파일이 있고, 2. 이걸 아래와 같이 만들고 싶으신 것 같습니다. 여기서 잠깐 이 생각을 해 봅시다. 여러분은 아래 두 가지 중 어떤 게 좋은 방식이라고 생각하시나요? (물론 호불호일 뿐, 정답은 없다고 생각합니다.) ① 따로따로 만들어 각각 실행하기!? 우선 다 잘라서 저장하는 프로그램을 하나 만들고, 파일명을 변경하는 프로그램을 별도로 만든다. 예를 들면 간단히 페이지 번호대로 1.hwp, 2.hwp, 3.hwp ... 저장하는 식으로. 그 후에 파일명을 변경하는 코드를 따로 만든다. (1.hwp부터 하나씩 열어서 "첫 번째 페이지입니다.hwp" 방식으로) ② 원클릭으로 끝까지 한 번에!?.. 2022. 1. 14.
[파이썬-한/글] 자동 자간조정으로 문서 깔끔하게 만들기 질문주신 내용은, 저도 고민해 본 적이 많은 주제입니다. 미흡하게나마 설명과 코드를 남깁니다. 먼저 예문을 만들어봅시다. 한글Lorem Ipsum 생성기에 들어가서 아래와 같이 두 개의 문단을 만들었습니다. 국가원로자문회의의 조직·직무범위 기타 필요한 사항은 법률로 정한다. 모든 국민의 재산권은 보장된다. 그 내용과 한계는 법률로 정한다. 대통령은 국민의 보통·평등·직접·비밀선거에 의하여 선출한다. 국민의 모든 자유와 권리는 국가안전보장·질서유지 또는 공공복리를 위하여 필요한 경우에 한하여 법률로써 제한할 수 있으며, 제한하는 경우에도 자유와 권리의 본질적인 내용을 침해할 수 없다. 모든 국민은 주거의 자유를 침해받지 아니한다. 주거에 대한 압수나 수색을 할 때에는 검사의 신청에 의하여 법관이 발부한 영.. 2021. 8. 14.
[파이썬-한/글]이미지 삽입시 "글뒤로 보내기" 설정방법 안녕하세요? 먼저 질문글에서 언급해 주신 글은 이것으로 추정됩니다. [자동화문의] 표 안에 이미지 넣는 작업 [1] 안녕하세요? 코딩하는 회사원들 유튜브 채널 구독자입니다. 궁금한것이 있어 이렇게 메일 드립니다. 저희회사에서는 매월 천개가 넘는 그림파일을 한글파일의 특정서식의 표에 붙여넣는 단 martinii.fun 위 글 중에 "이미지 삽입" 코드는 딱 한 줄입니다. hwp.InsertPicture(파일, Embedded=True, sizeoption=3) # sizeoption 파라미터 설명 # 0 : 이미지 원래의 크기로 삽입한다. width와 height를 지정할 필요 없다. # 1 : width와 height에 지정한 크기로 그림을 삽입한다. # 2 : 현재 캐럿이 표의 셀 안에 있을 경우, 셀.. 2021. 8. 14.