리스트란?
우리과 학생들을 파이썬으로 표현한다고 생각해보자. 우리가 지금까지 배웠던 지식을 이용한다면 아래와 같은 말도 안되는 코드를 작성할 수 있을것이다.
student_1 = "김준성"
student_2 = "김선우"
student_3 = "양기현"
student_4 = "김도현"
student_5 = "손건"
student_6 = "김윤정"
...
student_150 = "김도윤"
그럼 150명의 학생들을 다 작성하기 위해서는 150줄의 코드를 짜야한다고? 정말 말도 안되는 이야기같다. 심지어 모든 학생들을 출력한다고 생각해보자, 정말 생각하기만 해도 끔찍하다 개발자들은 그 누구보다 귀찮은 것을 싫어하는 사람들이다 그래서 그들은 리스트(배열)이라는 것을 만들었다.
students =["김준성","김선우","양기현","김도현","손건",...,"김도윤"]
print(students)
바로 이렇게 말이다. []괄호 안에 데이터들을 넣는 것이다. 그럼 print를 할때 print(students)를 한다면 한번에 출력이 된다.
students_id =[20171603, 20171602, 20171503, ..., 20171677]
print(students_id)
물론 이렇게 숫자들도 값으로 들어갈 수 있다.
리스트를 선언하는 방법
위에서 보았듯이, 리스트를 선언하는 방법은 꽤 간단하다.
lists = ["data1","data2","data3"]
이런식으로 변수명 = [데이터, 데이터, ..] 이런식으로 사용하게 된다.
리스트의 데이터를 가져오는 방법
총 3개의 과일이 있다고 하자. 리스트에있는 3개의 과일중에 2번째 과일을 가져오고 싶다면 아래와 같은 코드를 작성하면 된다.
fruits = ["apple","banana","grapes"]
print(fruits[0]) ## apple이 출력됨
print(fruits[1]) ## banana가 출력됨
print(fruits[2]) ## grapes가 출력됨
엥? 바나나는 2번째 데이터인데 왜 fruits[1]으로 가져오게 되는거지?? 이건 중요하다!! 프로그래밍에서 배열은 모두 0번째 부터 시작한다 즉 실제로는 첫번째 데이터이지만, 값을 가져올 때는 0번째 값을 가져오면된다.
다시한번 강조한다 어떤 프로그래밍 언어이든지 배열은 0번째 부터 시작한다
리스트에 값을 추가하는 방법
지금 과일이 총 3개가 있는데, 망고를 추가하고 싶다! 그럼 어떻게 해야할까? 그럴때는 append(추가할 데이터)를 사용하면된다! :)
fruits = ["apple","banana","grapes"]
fruits.append("mango")
리스트의 길이를 알고 싶을 때
len(리스트)를 넣으면 리스트의 길이를 출력할 수 있다. print(len(fruits))의 결과는 3이 나올 것이다.
fruits = ["apple","banana","grapes"]
print(len(fruits)) ## 3이 출력됨