칼퇴하는 일잘러의 업무 스킬, 파이썬 업무 자동화 문제 답안

문제 1 다음 코드는 Word 문서를 자동으로 생성하는 코드의 일부이다. 해당하는 부분이 Word에 표시되는 형태로 올바른 것은? p = document.add_paragraph() p.add_run("Test").bold = True p.add_run("Test")
보기
1. Test Test
2. TestBold Test
3. Test test
4. TestTest
정답
4
해설 run은 개행과 관계없이 하나의 문단에서 처리되는 단위이기 때문에 문자열이 연결됩니다.
문제 2 다음은 a태그가 "VIEW" 텍스트를 가지고 있을 때 해당 태그를 가리키기 위한 코드이다. driver.find_element(By.LINK_TEXT, "VIEW")
정답
X
해설 By.LINK_TEXT를 사용하면 a태그가 가지는 텍스트를 활용하여 태그를 가리킬 수 있습니다.
문제 3 다음 코드는 파일명이 담긴 변수 f_name이 csv 확장자를 가지는지 확인하는 조건문이다. if f_name[-3:] == 'csv':
정답
O
해설 슬라이싱을 음수로 하여 마지막 3개 문자를 가져올 수 있고, 이를 통해 csv 확장자를 가지는지 확인할 수 있습니다.
문제 4 다음 중 이메일 발송에 대한 설명 중 옳지 않은 것은?
보기
1. MIMEMultipart에 작성된 받는 사람의 사람 정보는 실제 받는 사람의 정보는 반드시 일치해야 한다.
2. MIMEMultipart 에 'CC'키를 사용하여 참조를 명시할 수 있다.
3. MIMEMultipart에 작성된 보내는 메일은 꼭 이메일 형식으로 작성해야 한다.
4. 숨은 참조 기능은 MIMEMultipart에 추가하지 않고 발송만 함으로써 구현할 수 있다.
정답
1
해설 MIMEMultipart에 작성된 받는 사람의 사람 정보는 실제 받는 사람의 정보와 일치하지 않아도 됩니다.
문제 5 다음 중 숫자를 할당하는 코드가 아닌 것은?
보기
1. a = 123
2. a = int("1234")
3. a = 20 + 50
4. a = "123"
정답
4
해설 따옴표로 감싼 경우 문자열로 인식합니다.
문제 6 웹 자동화를 하면서 time.sleep을 사용하는 이유는 웹 페이지의 로딩이 프로그램보다 느린 경우를 대비하기 위해서이다.
정답
O
해설 동적 웹사이트의 경우 웹 페이지의 로딩이 느린 경우가 있어, 이를 기다리기 위해 time.sleep을 사용합니다.
문제 7 SMTP를 활용하여 이메일을 발송할 때 SMTP 서버 주소는 필요없는 정보이다.
정답
X
해설 SMTP를 사용할 때는 SMTP 서버주소, 포트번호, 계정 정보가 필요합니다.
문제 8 WD_PARAGRAPH_ALIGNMENT 에 대한 설명으로 옳지 않은 것은?
보기
1. 정렬을 위해 사용하는 값이다.
2. center를 가지고 있다.
3. 가운데 정렬을 위해서는 문단이 가지는 alignment 변수에 할당해야 한다.
4. docx.enum.text 하위에 포함되어 있다.
정답
2
해설 center가 아니라 CENTER를 가지고 있습니다.
문제 9 다음 중 조건문에서 비교를 위해 사용하는 연산자가 아닌 것은?
보기
1. =
2. <
3. >
4. !=
정답
1
해설 = 연산자는 값을 할당할 때 사용하는 연산자입니다.
문제 10 다음 코드는 ActionChains를 사용하는 코드이다. 이 코드를 실행하면 elem 태그의 위치로 이동하여 클릭을 수행한다. ac = ActionChains(driver) ac.move_to_element(elem) ac.click()
정답
X
해설 ActionChains는 perform 함수를 호출해야 실제 동작을 수행합니다.
문제 11 다음 코드의 실행 결과로 맞는 것은? data = "800원" print(data.replace("원", "") + "100")
보기
1. 900
2. 900원
3. 800100
4. 800원100
정답
3
해설 replace 함수를 사용하여 "원" 문자를 삭제하였고 문자열끼리 덧셈을 하면 문자열은 연결됩니다.
문제 12 다음 중 open함수를 사용하여 파일을 열 때 사용하는 모드가 아닌 것은?
보기
1. open("파일명", "w")
2. open("파일명", "r")
3. open("파일명", "a")
4. open("파일명", "t")
정답
4
해설 t 모드는 없습니다. w는 쓰기 모드, r은 읽기 모드, a는 추가 모드 입니다.
문제 13 다음 중 SMTP를 사용하여 메일을 보내는 코드중 잘못된 코드는?
보기
1. smtp = SMTP_SSL(SERVER, PORT)
2. smtp.login(USER, PASSWORD)
3. smtp.handshake()
4. smtp.sendmail(SENDER, RECV, msg.as_string())
정답
3
해설 handshake 함수는 존재하지 않습니다.
문제 14 다음 중 실행 코드와 결과가 잘못 매칭된 것은?
보기
1. 코드: 'Python'.count('th') 결과: 2
2. 코드: {'k':'v'}.get('k') 결과: 'k'
3. 코드: 'Awesome'.replace('A, 'B) 결과: 'Bwesome'
4. 코드: "123" + "456" 결과: "123456"
정답
2
해설 딕셔너리의 get 함수는 키에 대한 값을 반환하는 함수로 'v'값이 나옵니다.
문제 15 다음 셀을 가리키는 코드 중 결과값의 형태가 다른 하나는?
보기
1. sheet['A1:B1']
2. sheet['A1:B2']
3. sheet['A:B']
4. sheet['1:2']
정답
2
해설 A1:B2는 여러행, 여러열을 의미하기 때문에 튜플이 중첩되어 반환됩니다.
문제 16 다음 중 내장 함수가 잘못 사용된 것은?
보기
1. len(100)
2. int("29")
3. range(10, 20)
4. max([1,2,3])
정답
1
해설 len은 길이를 구하는 함수로 숫자형과 함께 사용할 수 없습니다.
문제 17 다음 중 반복문을 무한히 수행하는 코드는?
보기
1. for True:
2. while True:
3. for i in range(infinity):
4. while true:
정답
2
해설 while 문의 조건에 True를 사용해야 합니다. 파이썬에서 참을 의미하는 True는 대문자 T로 시작해야 합니다.
문제 18 다음 중 이메일 파일 첨부와 관련된 설명 중 옳지 않은 것은?
보기
1. MIMEMultipart 타입이 mixed로 선언되어야만 이메일이 발송된다.
2. MIMEBase를 이용하여 직접 MIME 타입을 설정할 수 있다.
3. base64 형태로 인코딩을 해서 파일을 추가해야한다.
4. 파일 첨부를 위해 파일을 열때는 'rb'모드로 열어야 한다.
정답
1
해설 mixed로 선언되지 않더라도 이메일은 발송됩니다. 다만, 첨부파일이 있다는 정보를 수신자가 모를 수 있습니다.
문제 19 다음 중 이메일 파일 첨부 시에 활용되는 코드와 그에 대한 설명중 틀린 것은?
보기
1. os.path.basename 함수는 첨부파일의 경로에서 파일명을 가져오기 위해서 사용하는 함수이다.
2. file_data.add_header 함수는 첨부파일의 파일명을 추가해주기 위해 사용하는 함수이다.
3. encoders.encode_base64 함수는 파일의 내용을 읽어오기 위해 사용하는 함수이다.
4. file_data.set_payload 함수는 읽어온 파일을 MIMEBase에 담을 때 사용하는 함수이다.
정답
3
해설 encoders.encode_base64 함수는 MIMEBase에 담겨있는 파일 정보를 base64 형태로 변환하는 함수입니다.
문제 20 다음 중 파일과 관련된 함수와 이에 대한 설명으로 옳지 않은 것은?
보기
1. os.path.exists 함수는 파일의 존재 유무를 확인하는 함수이다.
2. os.makedirs 함수는 폴더를 만들 때 사용하는 함수이다.
3. os.makedirs 함수는 인자값과 관계없이 이미 폴더가 있는 경우 에러를 발생시킨다.
4. shutil.copyfile 함수는 파일을 복사할 때 사용하는 함수이다.
정답
3
해설 os.makedirs 함수에 exist_ok=True 인자값을 전달하면 폴더가 존재하더라도 에러가 발생하지 않습니다.