뮤트 개발일지

AIFFEL 아이펠 3일차 본문

AIFFEL

AIFFEL 아이펠 3일차

박뮤트 2021. 12. 29. 18:11

바이트byte: 컴퓨터의 기본 저장 단위

 - 1바이트(1byte)는 8비트(8bit)이다. 

 - 1바이트에는 2의 8승 즉, 256개의 고유한 값을 저장할 수 있다.

인코딩encoding: 문자열을 바이트로 전환하는 과정

디코딩decoding: 바이트를 문자열로 전환하는 과정

 

유니코드: 국제표준 문자표

UTF-8: 유니코드를 인코딩하는 방식

 

ord(): 해당 문자에 대응하는 유니코드 숫자 반환

chr(): 해당 유니코드 숫자에 대응하는 문자를 반환


이스케이프 문자

\' : '

\" : "

\t : tab

\n : 줄바꿈

\\ : \

 

원시문자열: 문자열이 시작하는 곳 앞에 r을 붙이면 이스케이프 문자가 적용되지 않는 그대로의 원시 문자열이 출력된다.

 

startswith(str): str로 시작하는 객체 반환

endswith(str): str로 끝나는 내용

 

공백문자:

 - 스페이스: 한 칸 띄어쓰기

 - tab: 네 칸 띄어쓰기

 - 줄 바꿈

 - 캐리지 리턴(carriage return) \r : 커서를 맨 앞으로 이동시킴, 즉 커서를 원위치로 복귀return한다는 뜻. 커서를 맨 앞으로 보내고  \r 뒤에 문자가 있으면 그 문자를 출력한다.

print("사회적 거리두기")
print('--------------------------')
print("사회적\t거리두기")
print('--------------------------')
print("사회적\n거리두기")
print('--------------------------')
print("사회적\r거리두기")
사회적 거리두기
--------------------------
사회적	거리두기
--------------------------
사회적
거리두기
--------------------------
거리두기

strip(): 공백제거

txt = "      Strip white spaces.      "
print('[{}]'.format(txt))
print('--------------------------')

#- 양쪽 공백 제거 : strip()
print('[{}]'.format(txt.strip()))
print('--------------------------')

#- 왼쪽 공백 제거 : lstrip()
print('[{}]'.format(txt.lstrip()))
print('--------------------------')

#- 오른쪽 공백 제거 : rstrip()
print('[{}]'.format(txt.rstrip()))
[      Strip white spaces.      ]
--------------------------
[Strip white spaces.]
--------------------------
[Strip white spaces.      ]
--------------------------
[      Strip white spaces.]

upper(): 모든 문자를 대문자로 변환

lower(): 모든 문자를 소문자로 변환

capitalize(): 첫 번째 문자를 대문자로 변환

 

isupper(): 문자열이 모두 대문자이면 ture, 아니면 false

islower(): 문자열이 모두 소문자이면 true, 아니면 false

istitle(): 문자열의 첫 글자만 대문자로 되어있으면 ture, 아니면 false

isapha(): 문자열이 모두 알파벳 문자로만 되어 있으면 true, 아니면 false

isalnum(): 문자열이 모두 알파벳과 숫자로만 되어 있으면 true, 아니면 false

isdecimal(): 문자열이 모두 숫자로만 되어 있으면 true, 아니면 false

 

join(): 원소를 모아 하나의 문자열로 만드는 함수. 인자로 tuple, listm string 등 연속형 자료형이 온다. 

split(): join()과 반대로 문자열을 구분자를 기준으로 나누어 반환한다. 명시적으로 구분자를 지정하지 않으면 ,쉼표를 기준으로 구분되어 반환된다.

replace(s1, s2): s1을 s2로 변환하여 반환

 

불변문자열

가변 객체 mutable object

 - 객체 생성 후 객체의 값 수정 가능

 - 변수는 값이 수정된 같은 객체를 가리키게 된다.

 - 예) 리스트, 셋, 딕셔너리

 

불변 객체 immutable object

 - 객체 생성 후 객체의 값 수정 불가능

 - 변수는 해당 값을 가진 다근 객체를 가리키게 된다.

 - 예) int, float, complex, bool, string, tuple, frozen set


정규 표현식regular expression, regex: 특정 규칙을 가진 문자열의 집합을 표시하는 형식 언어

 

정규표현식 사용하기

import re -> complie(): 찾고자 하는 문자열 정의 -> 정의된 문자열 패턴과 매칭되는 경우 찾아 처리

 

- search(): 일치하는 패턴 찾기 (일치 패턴이 있으면 MatchObject를 반환)

- match(): search()와 유사하지만 처음부터 패턴이 검색 대상과 일치해햐 한다.

- findall(): 일치하는 모든 패턴 찾기 (모든 일치되는 패턴을 리스트에 담아서 반환)

- split(): 패턴으로 나눔

- sub(): 일치하는 패턴으로 대체

 

- group(): 실제 결과에 해당하는 문자열 반환


- f.read(): 파일 읽기

- f.readline(): 파일 한 줄씩 읽기

- f.readlines(): 파일 안의 모든 줄을 읽어 그 값을 리스트로 반환

- f.write(str): 파일 쓰기

- f.writelines(str): 파일에 인자를 한 줄씩 쓰기

- f.close(): 파일 닫기

- f.seek(offset): 해당 파일의 위치를 찾아 파일의 커서 옮김. 파일의 처음 위치는 0

- f.tell(): 현재 커서의 위치 반환


개념

- 모듈mocdule: 파이썬으로 만든 코드가 들어간 파일 .py

- 패키지package: 모듈들의 집합 또는 폴더. 라이브러리라고도 불림

- 라이브러리library: 모듈과 패키지의 집합

- PIP(package installer for python): 패키지 관리자. 파이썬을 설치하면 기본으로 설치됨

- PyPA(python installer for python): 파이썬 패키지를 관리하고 유지하는 그룹

- PyPI(the python package index): 파이썬 패키지들의 저장소

 

함수

- sys.path: 현재 폴더와 파이썬 모듈들이 저장되는 위치를 리스트로 반환

- sys.path.append(): 모듈의 경로를 추가

- os.chdir(): 디렉터리 위치 변경

- os.getcwd() : 현재 자신의 디렉터리 위치를 반환

- os.mkdir(): 디렉터리 생성

- os.rmdir(): 디렉터리 삭제(디렉터리가 비어있을 경우)

- glob.glob(): 해당 경로 안의 디렉터리나 파일을 리스트 반환

- os.path.join(): 경로를 병합하여 새 경로 생성

- os.listdir(): 디렉터리 안의 파일 및 서브 디렉터리를 리스트로 반환

- os.path.exists(): 파일 혹은 디렉터리의 경로 존재 여부 확인

- os.path.isfile(): 파일 경로의 존재 여부 확인

- os.path.isdir(): 디렉터리 경로의 존재 여부 확인

- os.path.getsize(): 파일의 크기 확인


csv: comma seperated value, 쉼표로 구분된 파일
pandad: csv 파일을 dataframe으로 볼 수 있다.
xml: extensible markup language, 다목적 마크업 언더
- tag로 이루어져 있다. (html은 쉬워서 따로 정리하지는 않겠다.)
파이썬 표준 라이브러리 ElementTree로 xml 파일 만들기
- Element(): 태그 생성
- SubElement(): 자식 태그 생성
- tag: 태그 이름
- text: 텍스트 생성
- attrib: 속성 생성
xml 파일로 저장: wirte()
parsing: 구문 분석. 어떤 문자열을 의미있는 토큰으로 분해해, 문법적 의미와 구조를 반영한 파스트리를 만드는 과정. xml 문서를 파싱하면 특정 태그명이나 속성값 등을 불러올 수 있다.
xml 파싱하는 방법으로 BeautifulSoup을 많이 사용한다.
json: JavaScript object notation, 웹 브라우저와 다른 애플리케이션 사이에서 HTTP 요청으로 데이터를 보낼 때 자주 사용. xml과 더불어 웹 api나 config 데이터를 전송할 때 쓰인다.

파이썬 코딩도장

https://dojang.io/course/view.php?id=7 

 

강좌: 파이썬 코딩 도장

모두 펼치기모두 접기

dojang.io

 

Unit 16. for 반복문으로 Hello, world! 100번 출력하기

Unit 17. while 반복문으로 Hello, world! 100번 출력하기

Unit 18. break, continue 로 반복문 제어하기