정보처리기사

프로그래밍-파이썬

김귤🐵 2023. 7. 5. 16:10

파이썬은 매 회차 1문제 씩 출제되고 있다.

간단한 출력 문제가 나오며, 다음의 범위에서 문제가 나왔다.

  • for문 range()
  • list
  • set

 

1.for문,range()

1️⃣for문

기본 구조

for 변수 in 리스트(또는 튜플, 문자열):
    수행할_문장1
    수행할_문장2
    ...

리스트,튜플,문자열의 첫 번째 요소부터 마지막 요소까지 차례로 대입되어 수행된다.

 

2️⃣range()

range함수는 연속된 숫자를 생성하는데 사용되는 함수다.

//기본구조
range(start,stop,step)
  • start : 숫자의 시작값을 지정한다.
  • stop : 숫자의 종료값을 지정한다.
  • step : 숫자 간격을 지정한다. 기본값은 1

range함수는 실제로 숫자를 생성하는게 아니라 숫자를 나타내는 범위 객체를 반환한다.

함수로 생성된 숫자를 사용하기 위해서는 list함수나 반복문등을 활용하여 범위객체를 다른 자료구조로 변환해야한다.

# 0부터 9까지의 숫자를 생성
numbers = list(range(10))
print(numbers)  # 출력: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

# 1부터 10까지의 숫자 중에서 홀수만 생성
odd_numbers = list(range(1, 11, 2))
print(odd_numbers)  # 출력: [1, 3, 5, 7, 9]

숫자의 종료값은 미만값을 나타낸다. 그래서 range(10)은 10미만인 9까지 반환하게 된다.

 

기출문제

2021년 2회 기출문제

a = 100
result = 0
for i in range(1,3);
   result = a >> i
   result = result + 1
pirnt(result)

 

 

 

 

 

2.list

리스트 작성방법

리스트를 만들기 때는 대괄호([])로 만들어 준다.

리스트명 = [요소1, 요소2, 요소3, ...]

리스트 기출 문제

리스트에서는 출력 형태를 정확하게 구분해서 작성하도록 해야한다.

인덱스로 가져온것이 아닌 리스트 자체를 출력하게 된다면 반드시 대괄호([])까지 포함해서 출력해야 한다.

1.2020년 3회

TestList = [1,2,3,4,5]
TestList = list(map(lambda num : num + 100, TestList)))
 
print(TestList)

2.2021년 1회

class good :
	li = ["seoul", "kyeonggi","inchon","daejeon","daegu","pusan"]

g = good()
str01 = ''
for i in g.li:
	str01 = str01 + i[0]
    
print(str01)

3.2020년 4회

lol = [[1,2,3],[4,5],[6,7,8,9]]
print(lol[0])
print(lol[2][1])
  for sub in lol:
    for item in sub:
      print(item, end = '')
    print()

 

3.집합 자료형(set)

집합에 관련된 것을 쉽게 처리하기 위해 만든 자료형이다.

 

기본 구조

a = set(["한국","일본","중국"]
a = {"한국","일본","중국"}

set키워드안에 리스트를 넣어 만들거나, 중괄호{} 를 사용하여 생성 할 수 있다.

중복을 허용하지 않고, 순서가 없는 자료형이다.

 

집합 자료형에서 사용할 수 있는 함수

1️⃣add 

이미 만들어진 set자료형에 값을 추가

s1 = set([1, 2, 3])
s1.add(4)
s1
{1, 2, 3, 4}

2️⃣update 

여러 개의 값을 한꺼번에 추가

s1 = set([1, 2, 3])
s1.update([4, 5, 6])
s1
{1, 2, 3, 4, 5, 6}

3️⃣remove

특정 값을 제거

s1 = set([1, 2, 3])
s1.remove(2)
s1
{1, 3}

 

기출문제

1. 2023년1회, 2020년 2회

a={'일본','중국','한국'}
a.add('베트남')
a.add('중국')
a.remove('일본')
a.update(['홍콩','한국','태국'])
print(a)