본문 바로가기

코딩/파이썬

파이썬린이 파이썬 for beginner 제주코딩베이스 캠프 문제 1번, 2번


파이썬을 배우고 싶으나 금전적, 시간적 문제를 가진 이들을 위해 재능기부한 사이트가 있습니다.

제주 코딩 베이스캠프라는 곳이며, 이런 공기와 같은 소중한 자원들을 잘 사용하여 '나만 부지런하고 성실하면 어느정도의 실력을 만들 수 있는' 것을 잘 활용해보려 합니다.

1번 문제

다음 리스트에서 400, 500를 삭제하는 code를 입력하세요.

nums = [100, 200, 300, 400, 500]

일단 파이썬의 리스트 삭제 명령이 먼지 확인 해봐야 겠다.

'del 키워드를 통한 삭제' 이 있다.

그래서 아래와 같이 작성하니 NG가 나왔다.

nums = [100, 200, 300, 400, 500]

del nums[3,4]

Print ('nums')

(base) C:\Users\>C:/ProgramData/Miniconda3/python.exe "c:/Users//Desktop/code/제주베이스캠프/1번문제/1st.py"

Traceback (most recent call last):

File "c:/Users//Desktop/code/제주베이스캠프/1번문제/1st.py", line 2, in <module>

del nums[3,4]

TypeError: list indices must be integers or slices, not tuple

이렇게 도출 되었습니다. 튜플을 포함하면 안된다고 하군... 음...

답을 보아야 겠어요..ㅎㅎ

nums = [100, 200, 300, 400, 500]

nums.pop()

nums.pop()

print(nums)

엥 무슨 pop인지... 생뚱 맞은 명령어가 나왔지? 또 왜? 아무 숫자가 없는 것인가?

다시 구글링 하였다.

'pop()과 del은 지우고자 하는 리스트의 인덱스를 받아서 지우는 방식입니다. 두 개의 차이는 pop()은 지워진 인덱스의 값을 반환하지만 del은 반환하지 않습니다. 이 차이 때문에 미세하게 del이 pop()보다 수행속도가 더 빠릅니다. 또한 remove()와 동일하게 pop()과 del은 특정 인덱스를 삭제한 다음, 리스트를 재조정합니다. '

머 이렇단다. 잘 이해는 안된다. ㅋㅋ

POP()은 인자가 없을 시 맨뒤의 값을 삭제한다는 것을 유추할 수 있다.

2번 문제

l = [200, 100, 300]

<pass>

print(l)

<pass>부분에 리스트 내장함수를 insert를 이용하여 코드를 입력하고 다음과 같이 출력되게 하세요.

[200, 100, 10000, 300]

이 경우에는 insert의 문법을 알아야 되겠군

insert의 문법을 구글링 해보자

찾아보니 어렵지 않았다.

I = [200, 100, 300]

I.insert(2,10000)

print(I)

이렇게 입력하니

[200, 100, 10000, 300]

이렇게 입력이 되었다. 기분이 좋았다. ㅎㅎ

처음 맞춰서

오늘은 여기까지...