파이썬은 개발시간단축에 초점을 두어 C언어 보다 효율성 면에서 떨어진다.
이럼에도 불구하고 우리가 파이썬을 하는 이유는 간단하다.
"Life is short, you need python."
빠른 시간에 코드를 작성하고 결과물을 빨리 볼 수 있기 때문이다.
이것뿐 아니라 파이썬은 여러가지 장점을 지니고 있다.
-대화형식의 인터프리터 언어 : 컴퓨터와 대화하듯이 프로그래밍을 한다. 이런 점에서 나는 파이썬을 할 때 덜 지루한 것 같다.
-수많은 라이브러리 제공 : 헤더파일의 접근이 비교적 어려운 C언어 보다 파이썬은 더 많은 라이브러리를 제공한다.
-무료 : 많은 사람들이 함께 파이썬을 유지하고 관리하며 이를 무료로 제공한다. 라이브러리가 많이 제공되는 것에 이것도 한 몫하는 것 같다.
위 사항 이외에도 많은 장점들이 있으나 생략하고 배운 것들을 정리해보도록 하겠다.
파이썬 기초 문법
내 기준에서, 파이썬은 기본적으로 C언어와 굉장히 유사한 문법을 지니고 있다.
기본적으로 print 함수, if-while-for 문은 C언어와 매우매우 흡사한 형식으로 사용된다.
if문은 c의 else if 와 완전히 같고, 내가 이해하는 범위 이므로 작성을 생략하도록 하겠다.
-whlie문
위와 같은 형식으로 쓰인다. C와 몹시 흡사하지만 기본적으로 무한루프에 빠지기 쉬운 형태로 되어 있어, 보통 많이 사용하진 않는 편이다.
-for문
C와는 조금 다른듯한 모습이다. 리스트와 튜플은 조금 있다가 설명할 내용이다.
파이썬에서 사용하는 for문은 변수(i라고 지정하겠다)i가 리스트나 튜플 혹은 문자열에 해당하는 마지막 까지 명령을 반복한다.
*내가 아직 for문에 미흡하므로 나중에 더 잘하게 된다면 추가하겠다.
파이썬만의 특징인 리스트와 튜플, 딕셔너리에 대해 설명하겠다.
-리스트
보이는 것과 같이 대괄호 [ ] 안에 숫자 혹은, 작은 따옴표('char'), 큰 따옴표("string")을 사용한 문자열을 삽입한 자료형이다.
기본적으로 가장 많이 쓰이는 자료형이며, 개방적이어서 삽입, 삭제, 수정, 정렬, 뒤집기 같은 문법들이 모두 허용된다.
위와 같이 리스트 속에 리스트도 사용할 수 있다.
-튜플
사진상에서 많은걸 설명하고 있다. 설명이 잘 되어있지만 헷갈리지 않기 위해 말을 덧붙이자면,
생성 수정 삭제등이 불가능하지만 슬라이싱이나 튜플끼리의 사칙연산은 가능하다.
-딕셔너리
이름에서도 알 수 있다싶이, 딕셔너리형은 사전적 의미를 설명하는 형태로 쓰인다.
key와 value가 1:1로 상응하면서 서로의 의미를 지니게 된다.
딕셔너리는 요소의 추가, 삭제등이 가능하며 key 혹은 value 값만 추출이 가능하며 추출한 값으로 리스트를 새로 생성할 수 있다.
처음엔 어디서 사용하나 싶었지만 추후에 배울 판다스에서 DataFrame을 만들 때 쓰이게 된다.
자주 쓰는 문법에 대해 알아보자.
- 인덱싱(indexing)
인덱싱은 리스트, 튜플, 문자열 등에서 지정한 위치에 있는 값을 추출할 때 사용한다.
위에서 예제를 든 것은 너무 간단하므로 밑에 예제를 하나 더 들어보겠다.
list = [1, 2, 3, 4]
print(list[1])
>>> 2
나는 첫번째에 있는 친구를 호출했는데 왜 2번째에 있는 너가 나와? 라고 생각이 들 수 있다.
파이썬에서 기본적으로 제일 앞에 존재하는 친구의 숫자는 0으로 분류한다.
그러므로 내가 1을 추출해내고 싶다면 list[0]을 사용하면 된다.
참고로 위에 리스트 속 리스트가 존재할 때 인덱싱을 하면 리스트가 뽑아져 나온다.
ex) list = [1, [2, 3, [11, 22, 33]], 10]
print(list[1][2])
>>>[11, 22, 33]
-슬라이싱(slicing)
슬라이싱은 문자 그대로 잘라내는 것이다. 내가 원하는 부분을 끄집어 내는 것.
물론 중첩 리스트에서도 슬라이싱이 가능하다!
ex) a = [1, 2, [3, 4, 4, 5, 6, 7]]
print(a[2][:3])
>>>[3, 4, 5, 6]
-요소 추가 (append)
말 그대로 요소를 추가하는 것이다. 리스트 외에 튜플, 딕셔너리 모두에 해당하는 명령어이다.
이후 공부할 csv파일 정제할 때 자주 쓰이므로 숙지해두면 유용하다.
파이썬을 배우고 공부하기 시작한 지 2~3주 밖에 되지 않았지만, 파이썬은 참 유익하고 재밌는 것 같다.
페이지를 정리하기 시작하면서 나에게 좀 더 도움이 되는 시간이 많아졌으면 좋겠고, 앞으로 계속 수정해 나가면서 내가 모자랐던 점이나 고쳐나가야 할 점이 잘 보였으면 하는 바램이다.
2020. 5. 29
'데이터 분석 > 파이썬' 카테고리의 다른 글
pandas 데이터 정제 (2) (0) | 2020.06.27 |
---|---|
판다스를 이용한 데이터 정제 (0) | 2020.06.17 |
셀레니움을 이용한 웹크롤링(Web crawling) (0) | 2020.06.03 |
엑셀 심화 (0) | 2020.06.02 |
파이썬 csv 사용하여 엑셀파일 다루기 (0) | 2020.05.30 |