문제 01
a = "engineer information programming"
b = a[:3]
c = a[4:6]
d = a[29:]
e = b + c + d
print(e)
풀이 :
0부터 시작한다는 것!
이렇게 0으로 시작하고 띄어쓰기도 카운트 해야함
a 앞에서부터 3까지 가져오는 것이 아니라 앞에서부터 2까지 가져오는것
그래서 eng
c 역시 시작은 4부터지만 가져오는것은 4,5까지만 6은 포함하지 않음!
그래서 ne
d는 29부터 끝까지 다 가져오는 것
ing
답은 engneing
문제 02
a = "REMEMBER NOVEMBER"
b = a[:3] + a[12:16];
c = "R AND %s" % "STR";
print(b+c);
위랑 동일함 하나씩 카운트 해봄
b = REMEMBE 라는 값이 나옴
c는 R AND 까지 적고 %s 라는 값에 STR을 넣어주면 됨
그래서 R AND STR 이 출력됨
두개 더해주면 답은
REMEMBER AND STR
문자열 포맷팅 방법
1)문자열 % 값
정수 : %d 문자열 %s
2) 문자열{}. format(값)
3) f-string (v.3.6이상만)
문제 03
a = {'한국', '중국', '일본'}
a.add('베트남')
a.add('중국')
a.remove('일본')
a.update({'홍콩', '한국', '태국'})
print(a)
print(type(a))
{ } <- 이 중괄호는 set이며 set은 중복을 허용하지 않는다.
그래서 한국, 중국, 일본
베트남 더해주고
중국은 더했지만 중복이고
일본은 없어진다.
업데이트가 된 부분에서 역시 set이기에 한국은 중복이 된다.
최종적으로 답은
{'중국', '한국', '홍콩', '태국', '베트남'}
이렇게 나온다.
문제04
python의 map
TestList = [1,2,3,4,5]
TestList = list(map(lambda num : num +100, TestList))
print(TestList)
답은 [101, 102, 103, 104, 105]
list comprehension
.map
.filter
.reduce <-이거는 잘 안나옴;
lamda는 무엇?
익명함수임
리턴을 받는 변수 1 = lambda x: x+10
리턴을 받는 변수 2 = lambda z, y : z * y
리턴을 받는 변수 3 = lambda x, y ,z : x+y +z
앞에가 매개변수 뒤에가 리턴값이라는 것
map은 무엇?
반복가능한 데이터를 받아서 각 함수에 적용시켜준다
대부분 이런 문제는
함수를 보고 아마도 [ ] 리스트가 나오면 하나씩 mapping시켜서 나오면 됨
문제 05
다음 파이썬으로 구현된 프로그램에 "xyz321"을 입력했을 때 그 실행 결과를 확인하시오
x = input('입력 : ')
a = ['abc123', 'def456', 'ghi789']
a.append(x)
a.remove('def456')
print(a[1][-3:], a[2][:3], sep =',')
for i in range(3, 6):
print(i, end = '')
문제풀이:
append를 통해 리스트 뒷부분에 추가가 됨
그래서 이렇게 나옴
근데 리무브를 통해서 한칸 씩 앞으로 옮겨짐
슬라이스는 이렇게 표현할 수 있음
양수 또는 음수로 표현 가능함
print(a[1][ -3 : ])의 값은 789,
a[2][ : -3 ]의 값은 xyz이다.
※ sep = ', ' 은 분리문자로 쉼표(,)를 지정한다. 출력할 값들을 쉼표로 구분하여 출력한다.
for문은 i를 사용하고 뒤에 range (3, 6) 는 range(초기값, 최종값)이기에
초기값에서 최종값-1까지의 연속된 숫자를 생성한다.
3 4 5가 나옴
최종 답:
문제 06
a = {'apple', 'lemon','banana'}
a.update({'kiwi', 'banana'})
a.remove('lemon')
a.add('apple')
for i in a:
print("과일명: %s" % i)
위에 풀었던 문제랑 비슷!
set으로 중복되는거 제거 하고
for i in a 이 부분만 유의하면 됨
a의 세트의 각 요소의 값을 차례로 i에 저장하면서 a세트의 요소 수만큼 반복하는것
과일명: 과 i의 값을 출력한 후 커서를 다음 줄의 처음으로 옮긴다.
최종 출력되는 답:
문제 07
a = 100
result = 0
for i in range(1,3):
result = a >> i
result = result + 1
print(result)
a는 100 result 0으로 넣어놓고
반복문은 i는 1이 초기값이니 1로 시작함
'자격증공부 > 정보처리기사' 카테고리의 다른 글
c언어 포인터 문제 (0) | 2023.10.05 |
---|---|
[정처기] C언어 제어문 (0) | 2023.09.21 |
[정처기]c언어 문제 데이터입출력 연습하기 (0) | 2023.09.20 |
[정처기 실기] 기출문제 사이트 (0) | 2023.03.25 |
비전공자를 위한 정보처리기사 필기 단기간 합격하기 (1) | 2023.03.18 |