본문 바로가기

Python 입문

2023 점프 투 파이썬 - 2주차

1. 조코딩 Jo Coding

점프 투 파이썬 책을 활용해 5-6주 동안 매주 토요일 8시부터 기초 강의를 시작했다.

녹화본도 올려주신다고 하니 나중에 참고해도 좋을듯 하다.

파이썬 하나도 몰라도 쉽게 이해할 수 있을 정도로 친절하게 설명하여 주시고, 실시간 질문도 상세하게 대답해주셔서 듣기가 참 쉽다.

https://www.youtube.com/@jocoding

 

조코딩 JoCoding

누구나 배울 수 있는 쉬운 코딩 채널을 만들어가는 조코딩입니다. 프로그래밍에 대해 아무것도 모르더라도 개발이 가능하도록 기초부터 차근차근 쉽게 설명해드립니다. 또한, 단순히 코딩 지식

www.youtube.com

 

2. 자료형

숫자형, 문자열 자료형, 리스트 자료형을 배웠다.

기본 개념은 위키 독스를 참고할 수 있으니 생략하고

 1) 강의 듣다가 이해가 잘 안되었거나

 2) 응용 질문에 대한 답을 잘못 생각했거나

 3) 나중에 많이 활용할 것 같은 내용 위주로 정리해두려고 한다.

https://wikidocs.net/11

 

02장 파이썬 프로그래밍의 기초, 자료형

‘어떤 프로그래밍 언어이든 그 언어의 자료형을 알고 이해할 수 있다면 이미 그 언어의 절반을 터득한 것이나 다름없다’라는 말이 있다. 자료형이란 프로그래밍을 할 때 쓰이는 숫자,…

wikidocs.net

 

3. 문자열 자료형

3-1. 문자열에 ' " { 포함하기

여러가지 방법이 있지만 \ 역슬래시를 앞에 써주거나, {{ 와 같은 식으로 두번 반복해서 적어주면 된다.

say = "\"Python is very easy.\" he says."
print(say)

그럼 결과는 "Python is very easy." he says. 라고 나온다.

 

3-2. 문자열 인덱스는 0부터 시작한다

a = "Life is too short, You need Python"
print(a[3])

Life is too short, You need Python 문자열에서 3번째 인덱스는 e 이다.

왜냐하면 L = 0번째, i = 1번째, ... e = 3번째 이기 때문이다.

따라서 위 코드 결과는 e가 나온다.

 

3-3. 슬라이싱

[ : : ]

[처음부터 : 직전까지 : 구간 반복]

 

정리되지 않은 데이터를 받았을 때, 원하는 형태로 구분하여 정리하고 싶은 경우 유용하다.

예를 들어, 날짜 / 날씨로 잘라서 데이터를 구분하고 싶은 경우, 아래와 같이 코드를 작성하면 된다.

a = "20230331Rainy"
date = a[:8]
weather = a[8:]
print(date)
print(weather)

date = a[:8] 데이터 처음부터 (공백으로 비워놨음) 8번째 인덱스 전까지 (7번째 인덱스까지 포함해서) date로 저장한다.

따라서 print(date) 하면 20230331 까지만 출력된다.

2 = 0번째, 0 = 1번째, ... 1 = 7번째 인덱스이기 때문이다.

 

weather = a[8:] 8번째 인덱스부터 (8번째 글자 포함) 데이터 끝까지 (공백으로 비워놨음) weather로 저장한다.

따라서 print(weather) 하면 Rainy 라고 출력된다.

 

a = "20230331Rainy"
date = a[::2]
print(date)

[::2] 에서 마지막 숫자 2 뜻은 2번마다 반복한다는 뜻이다.

앞에 : : 사이는 비워 두었으니, 처음부터 끝까지 데이터에서 0번째, 2번째, 4번째, ... 12번째 문자열만 date로 저장한다.

따라서 print(date) 하면 2203Riy 라고 출력된다.

 

3-4. f포맷팅

2년전에 파이썬 배웠을 때에는 정수면 %d, 문자열이면 %s 라고 각각 사용했어야 하는데, f만 붙이면 된다.

세상 참 좋아졌다.

{ } 사용해서 계산도 바로 할 수 있다.

name = '홍길동'
age = 30
a = f'나의 이름은 {name}입니다. 나이는 {age}입니다.'
print(a)
age = 30
a = f'나는 내년이면 {age + 1}살이 된다.'
print(a)

 

3-5. 함수

우선은 엑셀 함수와 같은 개념으로 이해하고, 자세한 내용은 추후 강의에서 배울 수 있다고 한다.

자주 사용하는 것은 그래도 손에 익혀두되, 외워두어야 한다고 집착할 필요는 없다.

우리에게는 구글링과 ChatGPT가 있으니까.

a = ",".join('abcd')
print(a)

특이했던 것 하나만 가져오면, join 사용하면 d 뒤에는 , 추가가 되지 않는다.

print(a) 결과는 a,b,c,d 이다.

"," 이라고 입력했기 때문에 띄어쓰기 없이 추가된다.

 

4. 리스트 자료형

4-1. append

a = [1, 2, 3]
a.append(4)
a.append([5, 6])
print(a)

리스트 맨 마지막에 추가하는 함수다.

따라서 a.append(4) 경우 [1, 2, 3, 4] 결과값을 만든다.

 

리스트 안에는 어떠한 자료형도 추가할 수 있다.

따라서 a.append([5, 6]) 경우 [1, 2, 3, 4, [5, 6]] 결과값을 만든다. (위의 코드 다음에 실행되므로 4가 포함되어 있다)

 

4-2. pop

리스트 맨 마지막 요소를 리턴하고 그 요소는 삭제한다.

a = [1, 2, 3]
print(a.pop())
print(a)

a.pop() 경우 3이다. 따라서 print(a.pop()) 경우 3 결과값을 볼 수 있다.

이후 print(a) 실행하므로 a = [1, 2] 결과값을 볼 수 있다.

 

5. 소소한 팁

5-1. 저장한다 -> 넣는다

a = "Life is too short, You need Python" 설명할 때 '저장한다'라고 적었지만

뒤에 있는 문자열을 a에다가 '넣는다'가 정확한 개념이다.

 

5-2. 모르면 구글링 or ChatGPT 검색한다

예제를 따라 하던중 SyntaxError: invalid syntax File "<stdin>", line 1 에러가 뜨면서 터미널에 결과값이 안나왔다.

맥북을 사용해서 그런가.. 싶어서 Visual Studio Code 다시 껐다 키고, 폴더도 새로 만들어 봤지만, 몇번 하다보면 에러가 계속 떴다.

 

구글링 해보면 다 나온다고 알려주셨던 것이 기억나서 코드를 바로 복사/붙여넣기 해서 찾아봤더니, 첫 검색 결과에서 바로 해결 완료.

아래쪽 터미널에다가 exit() 입력했더니, 더 이상 에러가 뜨지 않았다.

 

다만, 원인이 무엇이었는지, 어떻게 해결 되었는지는 알 수 없어 답답하다.

 

5-3. >>> 일괄 삭제

>>> 더블 클릭

ctrl+D 반복

delete

'Python 입문' 카테고리의 다른 글

데이터 분석1-4. 요일/시간 분석  (0) 2021.06.26
데이터 분석1-3. 워드 클라우드  (0) 2021.06.26
데이터 분석1-2. 이탈 분석  (0) 2021.06.26
데이터 분석 1-1. 상권 분석  (0) 2021.06.16
Matplotlib 연습  (0) 2021.05.23