알고리즘
프로그램
Defining
Combining(Reusing)
애매함이 전혀 없어야함
추상화
사람이 한계가 있어서 추상화 필요
/ 소수점나오는 나눗셈
// 몫만 나오는 나눗셈
% 나머지
** 제곱
우선순위
**
-(음수)
*, /, //, %
+, -
int float
function 속에 function 넣을 수 있다
변수 이름은
= 는 같다는 뜻이 아님
x, y = 1, 2
y, x = x, y 가능
이름(id) 안에 주소(address) 따라가면 value
할당 다시할때 자리를 차지하는게 아니라
다른 주소로 가는 느낌임
들여쓰기 있어야함
지역변수 : 임시적
전역변수가 기본
float
str
boolean type
, <, >=, <=, ==, !=
조건문
import math
import math as my_math
A.B
모듈 변수의 값을 변경할 수 있으나 하지마라!
내장함수도 변수이름으로 사용하지 말아라!
import * 하지마라
모듈은 파일 이름이 모듈
클래스는 여러개 양산 object들을 만들 수 있다
매소드는 클래스 안에 있는 함수 (파라미터 일일히 안 써도 됨)
나를 포함하는 클래스 object가 디폴트로 알규먼트에 들어감
리스트는
순서가 있다
유연하다
검색 느림
수정할 수 있다
[]
0 1 2 3
-4 -3 -2 -1
리스트 안에 리스트
리스트 메소드
카피
Alias
내림차순 하려면
start>stop, step<0
break
continue
반복문 문제점
: 무한반복
sets
tuples
딕셔너리
비교
| 기호 | 순서 있는지 | 수정 가능한지 | 중복 가능한지 | |
|---|---|---|---|---|
| 리스트 | [ | O | O | O |
| 세트 | { | X | O (요소는 불가능) | X |
| 튜플 | ( | O | X (요소가 수정 가능하면 가능) | O |
| 딕셔너리 | { | 어느 버전부터는 있음 | O | 키: X, 값: O |
file = open(’file_example.txt’, ‘r’)
current location
경로
import os
os.getcwd() # 현재 경로 알려주기 (커랜트 월킹 디렉토리)
os.chdir("/User/hskim/Desktop") # 경로 바꾸기 (체인지 디렉토리).read() | 파일 전체를 문자열로 반환 | 파일 전체를 한 번에 읽기. 메모리 많이 사용 |
|---|
.readline() | 한 줄을 문자열로 반환 | 한 번에 한 줄씩 읽기. 반복문 사용 가능 |
|---|
.readlines() | 모든 줄을 리스트로 반환 | 모든 줄을 리스트로 저장 |
|---|
lines.strip()
line = line.decode(”utf-8”)
헤더 스킵하는 방법
line = skip_header(input_file)
에러 해결
if line != ‘-’:
4원칙