빅데이터 부트캠프 1일차
용어 정리
프로그래밍 - 프로그램을 작성하는 일
코딩 - 주어진 데이터를 컴퓨터가 이해할 수 있는 형태로 바꾸는 것 (코딩은 프로그래밍의 일부)
인터프리터 언어 - 프로그래밍 언어로 작성된 프로그램을 한 줄 단위로 번역 및 실행시키는 언어
오픈 소스 - 소스코드(프로그래밍 언어로 작성된 명령어)가 공개된 소프트웨어
GPU - 그래픽 처리 장치, 컴퓨터 시스템에서 그래픽 연산을 빠르게 처리하여 결과값을 모니터에 출력하는 연산 장치 (그래픽 카드)
텍스트 데이터 - 문자 데이터
바이너리 데이터 - 텍스트 데이터 이외의 이미지, 영상 등
네이밍 컨벤션 (Naming Convention)
- 통일성을 갖기 위해서는 사람들이 공유하는 코딩 스타일 가이드
- 파이썬에서는 주로 Snake_case(공백 _ 사용) 사용하지만 Class 설정시에는 PascalCase(단어시작 = 대문자) 사용
데이터 타입
str = 문자, int = 정수, float = 실수(소숫점), bool = True or False (1 or 0)
시퀀스 타입
- 여러개의 데이터를 하나의 자료형으로 관리하기 위한 방법
- 리스트(list)
- 튜플(tuple)
- 레인지(range)
- 세트(set)
- 딕셔너리(dictionary)
구글 코랩 기초
단축키
Ctrl + Enter = 해당 셀 실행 및 커서 해당 셀에 그대로
Shift + Enter = 해당 셀 실행 및 커서 다음 셀로 패스
Alt + Enter = 해당 셀 실행 및 커서 다음 셀로 패스 및 다음 셀 없을 시 셀 생성
Ctrl + M A = 해당 셀 위에 새로운 셀 삽입
Ctrl + M B = 해당 셀 아래에 새로운 셀 삽입
Ctrl + M D = 셀 삭제
Ctrl + M Y = 코드 셀로 변경
Ctrl + M M = 마크다운 셀로 변경
Ctrl + M Z = 실행 취소
문자열 함수
ord = 해당 문자 아스키 코드 숫자로 변환
chr = ord의 반대
ex) ord('A') = 65, chr(65) = A
※ 문자열 출력시 \n의 역할을 대신하는 방법 = print 사이에 ;(세미콜론) 입력
ex) print('라면\n피자') = print('라면') ; print('피자')
라면
피자
※ 다양한 타입의 데이터 같이 출력해야하는 경우
1. 하나의 데이터 타입으로 통일
2. print(a, 1, '!') 식으로 ,(콤마)를 이용하여 출력
-> ,를 띄어쓰기로 인식하여 a 1 ! 이 출력
※ 문장이 길어서 엔터를 적용하고 싶은 경우
해당 문장 앞뒤에 '이나 " 3번 입력 '''~''', """~"""
list와 tuple
- 둘 다 자료형 시퀀스 타입
- 대괄호와 Index 번호를 통하여 원하는 데이터 출력 가능
- list는 대괄호 사용 및 데이터 수정 가능
- tuple은 소괄호 사용 및 수정 불가능(원본 유지)
- string(문자열) = 튜플 속성(원본 유지)
인덱스와 슬라이스
- 콜론 1개(:)로 가져올 데이터의 범위 설정 [시작번호:끝번호+1]
ex) A = 12345 -> A[0:2] = 12
[:b] = 정의된 변수의 문자에서 처음부터 b-1번째 문자를 가져와 생성
[a:] = 정의된 변수의 문자에서 a번째부터 끝까지 문자를 가져와 생성
[-a:] = 정의된 변수의 문자에서 -a번째부터 끝까지 문자를 가져와 생성
[a:b:c] = 정의된 변수의 문자에서 a번째부터 b-1번째 문자를 c칸씩 출력
ex) 1:6:2 = 1번째부터 5번째까지 2칸씩 출력
- 콜론 2개(::)로 가져올 데이터의 범위 및 데이터 간의 범위 설정
ex) 1:6 = 1번째부터 5번째까지 출력, 1::2 = 1번째부터 2칸씩 출력, 2::3 = 2번째부터 3칸씩 출력
- 음수 지정으로 끝번째 데이터 출력 가능
ex) li[-1] = 끝 순서 데이터, li[-2] = 끝에서 두번째 데이터, li[::-1] = 맨 끝부터 역순으로 출력
리스트에 데이터 추가 (튜플에서 사용 X)
append = 맨 끝 순서에 하나의 데이터 만을 추가할 때
extend = 맨 끝 순서에 여러개의 데이터를 추가할 때
insert = 특정 순서에 원하는 데이터 추가할 때
ex) A.insert(2, 30) = 리스트 A의 두번째 순서에 '30' 추가 (순서는 0부터)
리스트에 데이터 삭제 (튜플에서 사용 X)
remove = 리스트에서 지정한 데이터 삭제
pop = 해당 순서에 있는 데이터 삭제 (빈칸일 경우 맨 끝 데이터 삭제)
리스트 정렬
sort = 데이터 오름차순 정렬 (원본 변경)
ex) list1.sort() -> list1 변경
만약 list1 = list1.sort()를 하면 type(list1) = Nonetype이 출력되니 =을 사용하지말고 .sort()만 입력할 것!
sorted = 데이터 오름차순 정렬 (원본 변경 X)
ex) a = sorted(list1) -> list1은 그대로 sort가 적용된 데이터는 a로
reverse = 기존 데이터 순서 반대로 바꾸어 정렬 (원본 변경)
ex) list1.reverse() -> list1 변경
만약 list1 = list1.reverse()를 하면 type(list1) = Nonetype이 출력되니 =을 사용하지말고 .reverse()만 입력할 것!
reversed = 기존 데이터 순서 반대로 바꾸어 정렬 (원본 변경 X)
ex) a = reversed(list1) -> list1은 그대로 reverse가 적용된 데이터는 a로
※ index = 리스트나 문자열에서 해당 문자가 인덱스 번호 기준 몇번째에 위치하는지 출력