본문 바로가기

Python4

[Python] 인코딩 에러(UTF8, CP949) 해결 txt로 되어있는 데이터 파일을 불러오던 도중 종종 맞닥뜨리는 짜증나는 상황이 다시 한번 발견되었다. 더 이상 데이터 처리 과정에서 구글링에 애먹지 말자고 다짐하였기에, 해당 에러의 의미를 파헤치기로 했다. UTF-8? UTF-8은 전 세계적으로 가장 많이 사용되는 가변 길이 유니코드 인코딩이다. 유니코드? 가변길이? 천천히 알아보자 유니코드 : 전 세계의 모든 문자를 다루기 위해 설계된 표준 문자 전산 처리 방식. 많이 들어본 ASCII코드 또한 유니코드이다. 가변길이 유니코드 : 유니코드 한 문자를 나타내기 위해 UTF-8은 1byte ~ 4byte까지 사용 가능하며, 이를 가변 길이 인코딩 방식이라고 한다. 언어마다(국가마다) 인코딩 방법이 다르고, 한글을 위한 유니코드 또한 따로 존재한다. 그것이.. 2022. 12. 22.
[Python] 날짜 처리 방식 strftime(), strptime() 객체에서 문자열로의 변환은 strftime(), 문자열에서 객체로의 변환은 strptime()이 사용된다. strftime(), strptime 메서드에 주로 사용되는 서식을 먼저 살펴보겠다. ◆ %d : 0을 채운 10진수 표기로 날짜를 표시 ◆ %m : 0을 채운 10진수 표기로 월을 표시 ◆ %y : 0을 채운 10진수 표기로 2자리 년도 ◆ %Y : 0을 채운 10진수 표기로 4자리 년도 ◆ %H : 0을 채운 10진수 표기로 시간 (24시간 표기) ◆ %I : 0을 채운 10진수 표기로 시간 (12시간 표기) ◆ %M : 0을 채운 10진수 표기로 분 ◆ %S : 0을 채운 10진수 표기로 초 ◆ %f : 0을 채운 10진수 표기로 마이크로 초 (6자리).. 2021. 7. 17.
[Python] 정규 표현식(1) 정규 표현식(Regular Expressions)은 복잡한 문자열을 처리할 떄 사용하는 기법이다. 정규방정식이 왜 필요할까? 다음 문제를 보며 필요성을 느껴보자. 주민등록번호를 포함하고 있는 텍스트가 있다. 이 텍스트에 포함된 모든 주민등록번호의 뒷자리를 *문자로 변경해 보자. 981118-1122334 정석적인 방법은 1. 전체 텍스트를 공백 문자로 나눈다(split). 2. 나뉜 단어가 주민등록번호 형식인지 조사한다. 3. 단어가 주민등록번호 형식이라면 뒷자리를 *로 변환한다. 4. 나뉜 단어를 다시 조립한다. data = """ park 800905-1049118 kim 700905-1059119 """ result = [] for line in data.split("\n"): word_result.. 2021. 6. 29.
백준 온라인 저지(Baekjoon Online Judge) 블로그 포스팅 할 때마다 한 번씩 들어가서 연습해보기 위해 올려놓는다. https://www.acmicpc.net/ Baekjoon Online Judge Baekjoon Online Judge 프로그래밍 문제를 풀고 온라인으로 채점받을 수 있는 곳입니다. www.acmicpc.net 차근차근 기초적인 부분부터 꾸준하게 풀어보자. 데이터 분석을 공부하는데 있어 코딩을 놓으면 안될것이다. 2021. 6. 26.