일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 딥러닝공부
- 딥러닝
- 머신러닝 강의
- acmicpc.net
- 머신러닝
- 백준 알고리즘
- 지도학습
- 경사하강법
- feature scaling
- 자바시작하기
- 머신러닝공부
- 비용함수
- C언어
- unsupervised learning
- supervised learning
- 비지도학습
- 파이썬강좌
- Gradient Descent
- 선형회귀
- Python강의
- java
- 자바강좌
- 파이썬강의
- python강좌
- JAVA강좌
- 인공지능
- 자바
- 머신러닝 강좌
- 효묘블로그
- c언어 오목
- Today
- Total
컴공과컴맹효묘의블로그
[효묘]초보자를 위한 Python강좌 리스트, 슬라이스 본문
리스트
이번 강좌에서는 리스트 반복문에 대해 알아보겠습니다.
사실 프로그래밍은 이 반복문만 잘 쓰면 됩니다.
Python에서 리스트라하면, C언어와의 배열과는 약간 다릅니다.
리스트를 선언하는 법 부터 알아보겠습니다.
num = [1,2,3,4,5]
print(num)
위 코드는 1,2,3,4,5라는 숫자를 순서대로 나열한 값을 num에 집어 넣는다는 뜻입니다. list는 말 그대로 값들을 나열합니다.
저기서 num을 출력해보면, [1, 2, 3, 4, 5]라고 나옵니다. 이처럼 리스트는 여러 값들을 저장할 때 쓰입니다. 예를 들어서 사람들의 이름을 저장하고 싶다고 생각합시다.
일단 리스트를 쓰지 않겠습니다.
name1 = "철수"
name2 = "영희"
name3 = "영수"
print(name1, name2, name3)
만약 3명의 이름을 저장하려면, 변수를 세 개 만들어야합니다.
100명의 이름을 저장하려면 변수를 100개 만들어야 하죠.
리스트는 이런 고생을 줄여줍니다.
names = ["철수", "영희", "영수", "길동", "민지"]
print(names)
6줄로 만들 코드를 단 2줄로 줄였습니다.
list형의 names 변수의 첫 번째에 저장되어 있는 값을 출력하고 싶을 때는 다음과 같이 쓰면 됩니다.
print(names[0])
names리스트의 첫 번째 값을 출력한다는 의미입니다. 여기서 왜 첫 번째가 1이 아니고 0이라고 쓰냐면, 컴퓨터는 숫자를 1부터 세지않고, 0부터 세는 특성 때문입니다.
이 names[ ]에서 [ ] 안의 값을 보통 index라고 부릅니다.
슬라이스 라는 개념도 있습니다.
슬라이스란, 말 그대로 배열을 자른다는 의미인데요, 슬라이스를 통해 names의 2번째부터 4번째까지의 이름을 출력할 수 있습니다.
print(names[1:4])
2번째, 즉 names[1]부터 4번째인 names[3]까지 list의 형태로 출력한다는 의미입니다.
인덱스를 생략할 수도 있습니다.
print(names[:4]) #== print(names[0:4]) 첫 번째 인덱스 부터 n-1까지
print(names[2:]) #== print(names[2:4]) n번째 인덱스 부터 마지막 인덱스 까지
좀 더 많은 데이터를 다루기 위해서 range함수를 써보겠습니다.
num = [v for v in range(100)]
for문은 다음 강좌에서 다루겠습니다. 일단 이 구문이 0부터 99까지 총 100개의 숫자를 list형태로 저장한다는 것만 기억하십시오.
print(num)
>>[0, 1, 2, 3, 4, ......... , 97, 98, 99]
슬라이스의 기능 한가지를 더 소개하겠습니다.
print(num[::3]) #첫 번째 인덱스부터 3번째씩 출력..
>>[0, 3, 6, 9, ....... , 93, 96, 99]
인덱스의 증가폭을 결정해줘서 다음과 같이 출력할 수 있습니다.
슬라이스의 기능을 정리하겠습니다.
num[n:m:i]
[n번째 인덱스 부터: m-1까지의 인덱스까지:i번 마다]
이번 리스트 강좌를 마치고 다음에는 반복문을 알려드리겠습니다.
아직 많이 부족한 강좌지만 봐주셔서 감사합니다.
'컴퓨터 > Python' 카테고리의 다른 글
파이썬 가장 쉬운 정렬 알고리즘- 순차정렬 (0) | 2020.02.16 |
---|---|
[효묘]초보자를 위한 Python강좌 반복문 (0) | 2019.06.17 |
[효묘]초보자를 위한 Python강좌 3 (0) | 2019.06.14 |
[효묘]초보자를 위한 Python강좌 2 (0) | 2019.06.14 |
[효묘]초보자를 위한 Python강좌 1 (0) | 2019.06.13 |