내가 보려고 만든 블로그

정보처리기사 실기(파이썬) 본문

정보처리기사 공부

정보처리기사 실기(파이썬)

hjh1023 2023. 4. 28. 18:59
반응형
0
-5
1
-4
2
-3
3
-2
4
-1

리스트

리스트가 있을때 파이썬은 앞에서 부터하면 0,1,2,3... 이렇게 나가는데 반대로하면 -1,-2,-3....이런식으로 나간다.

그리고 파이썬은 a[0:2]이렇게 있으면 0번째,1번째가 나온다.

range도 range(1, 20) 이러면 1~19까지 나온다.

list[start:end:step]

잘기억해야함 파이썬 안써서 step값 처음봤을때 이게 뭔가싶었음.......;;;;;;;

ex)list[0:10:2]이러면 0~9까지 2스텝으로 가는것이다.

a = "REMEMBER NOVEMBER"

b = a[0:3] + a[12:16]

c = "R AND %s" % "STR"

print(b+c)
print(a[::2])
print(a[::-2])
print(a[0:8:2])
print(a[0:2])

답:

REMEMBER AND STR

RMME OEBR

RBEO EMMR

RMME

RE

이 코드 보고 참고해서 어떻게 출력되는지 확인!!

 

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

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

skiddp

 

SET

집합(set)

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

 

{'한국', '홍콩', '태국', '중국', '베트남'}

1)중복을 허용하지 않는다.
2)순서가 없다.

그래서 update를 써도 중복되지않는 값만 들어감.

 

리스트나 튜플은 순서가 있기(ordered) 때문에 인덱싱을 통해 자료형의 값을 얻을 수 있지만 set 자료형은 순서가 없기(unordered) 때문에 인덱싱으로 값을 얻을 수 없다. 

 

for i in {1, 2, 4, 8, 16, 32}:
	print(i)

32
1
2
4
8
16

이런식으로 어떤값이먼저올지 모른다.그리고 그냥 print하면 {} 이거하고 같이 출력되는데 for문으로 돌면 값만 출력됨.!!

 

a,b = 100, 200 
print(a==b)

 

False

True

파이썬에서는 이렇게출력됨

 

쉬프트연산자

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

100을 2진수로변경한뒤 1100100

i가 1이면 이진수에서 뒤에 0 하나없애서 110010 :50이되고 result에 1더하면 51이다

i가 2면 a는 바뀌는게 없으니깐 다시 100을 2진수로 변경한 뒤 1100100 뒤에 두개를 없애준다.

11001 을 십진수로 변경 후 25 에 1더해주면 26이다 그래서 답은 26

 

insert 함수

a = [100,70,88,25]
print(a)
a.insert(0,10)
print(a)
a.insert(0, [10, 20])
print(a)
nums = [1, 2, 3]
a.insert(len(nums), 100)
print(a)

[100, 70, 88, 25]
[10, 100, 70, 88, 25]
[[10, 20], 10, 100, 70, 88, 25]
[[10, 20], 10, 100, 100, 70, 88, 25]

 

append함수

a = [100,70,88,25]
a.append(22)
print(a)
a.append([33.44])
print(a)

[100, 70, 88, 25, 22]
[100, 70, 88, 25, 22, [33.44]]

 

extend함수

a = [100,70,88,25]
a.extend([4, 5])
print(a)

[100,70,88,25,4,5]

extend 괄호( ) 안에는 iterable 자료형만 올 수 있다는 것

그냥 a.exend(10)이러면 에러남!!

iterator 객체 - 값을 차례대로 꺼낼 수 있는 객체

 

remove함수

a = [100,70,88,25]
a.remove(100)
print(a)

[70, 88, 25]

 

a = [100,70,88,25]
b = a.pop()
print(b)
print(a)

25
[100, 70, 88]

b에 a.pop값을 넣을수있음!! 그래서 마지막값인 25가 출력됨

 

반응형