Hayden's Archive
[Python] 파이썬 입문 (3) - 리스트 사용 / for 반복문 본문
프로그래머스 파이썬 입문 강의 https://programmers.co.kr/learn/courses/2
리스트 사용
- 파이썬에서는 리스트가 자바의 배열에 해당된다.
-
여러개의 값을 담을 수 있는 변수
list1 = [1,2,3,4,5]
-
값 읽어오기
- 리스트를 사용할때는 0번째가 첫번째
- 첫번째 값 list1[0]
- 두번째 값 list1[1]
- 뒤에서 첫번째 값 list1[-1]
- 뒤에서 두번째 값 list1[-2]
- 리스트에 새로운 값을 추가하는 방법
- list1=[1,2,3]이라고 할 때
- append를 이용
- list1.append(4)
- append를 이용하면 리스트에 새로운 값이 추가된다.
- 뒤에 새로운 리스트를 더하기
- list2=list1+[4]
- list1은 그대로 두고, 새로운 리스트를 만들어 낸다.
- 리스트에 값이 들어있는지 확인하는 방법
-
in 연산을 이용
#12라는 값이 리스트에 들어있는지 확인하는 코드
n=12
if n in list1:
print('{}가 리스트에 있다.'.format(n))
- 리스트에서 필요 없는 값을 지우는 방법
- del을 이용해서 특정 위치의 값을 지우기
- del list1[10] 리스트의 10번째 값을 지워라
- remove를 이용해서 특정 값을 지우기
- list1.remove(40) 을 하면 리스트에 40이라는 값이 있는경우 삭제
- 여러개의 값이 있는 경우 가장 앞에 있는 하나만 지워짐
첨언 : 파이썬을 처음 배울 때도 느꼈던 거지만 자바를 배우고 나서 다시 배우니 파이썬은 굉장히 직관적인 언어이다. 자바에서 배열로 코드를 짜면 번거로울 때가 많은데 리스트는 참 간단하고 직관적이다. 특히 list2 = list1 + [4]라니 자바에서는 있을 수 없는 일. 응용해서 파이썬에서는 list1 = [1, 2, 3]이고 list2 = [4, 5, 6]이라면 list3 = list1 + list2 = [1, 2, 3, 4, 5, 6]으로 그냥 간단하게 합칠 수 있다. 자바에서는 정말로 있을 수 없는 일이다.
하지만 무조건 간단하고 직관적인 게 다 좋다고 할 수는 없을 것 같다.
for 반복문
for in list
리스트 patterns 안에 있는 값들을 모두 뽑아내는 건데 자바에서의 향상된 for문과 같다.
for in range
# 필요한 만큼의 숫자를 만들어내는 유용한 기능
for i in range(5): # [0, 1, 2, 3, 4]
print(i)
# 응용
animals = ['강아지', '고양이', '판다', '팽귄', '쿼카']
for i in range(len(animals)): # for i in range(5):
animal = animals[i]
print('{}번: {}'.format(i+1, animal))
enumerate 함수 : for in과 함께 쓰임
# 리스트가 있는 경우 순서와 리스트의 값을 전달하는 기능
names = ['철수', '영희', '영수']
for i, name in enumerate(names):
print('{}번: {}'.format(i + 1, name))
참고 : https://wayhome25.github.io/python/2017/02/24/py-07-for-loop/