파이썬 프로그래밍
문제해결
- 복잡한 문제를 작은 문제로 분할하면서 해결한다.
- 문제에 대한 패턴을 발견한다.
- 최소한의 비용으로 최대한 빠르게 해결한다.
기반기술
- 파이썬, 알고리즘, 자료구조는 생산을 위한 도구이다.
- 파이썬: 컴퓨터와의 소통 언어(예를 들어, 수학)
- 알고리즘: 효율적인 문제 해결 방법(예를 들어, 사칙연산 또는 미적분)
- 자료구조: 프로그램의 구조와 크기(예를 들어, 수학 문제들간의 관계와 난이도)
제어문(Control Statement)
정규표현식
- 특정한 규칙을 가진 문자열의 집합을 표현하는 형식이다.
- 복잡한 문자열을 처리할 때 사용하는 기법이다.
- 파이썬 이외에도 모든 프로그래밍 언어에서 공통적으로 사용한다.
- 데이터를 분석하기 전 데이터를 구분하기 위해 많이 활용된다.
1 |
|
다양한 메소드
rjust(width, [fillchar])
- 원하는 문자를 따로 지정하고, 다른 문자열로 앞 부분을 채워줄 수 있다.
1 |
|
zfill(width)
1 |
|
얕은 복사(copy())
1 |
|
깊은 복사(deepcopy())
- 깊은 복사는 내부에 객체들까지 새롭게 copy되는 것이다.
- 완전히 새로운 변수를 만드는 것이다.
1 |
|
- 얕은 복사, 깊은 복사 파헤치기
- 얕은복사(shallow copy)는 복합객체(껍데기)만 복사, 그 내용은 동일한 객체이다.
- 깊은복사(deep copy)는 복합객체 복사 + 그 내용도 재귀적으로 복사한다.
반복문과 조건문
zip
1 |
|
에러 상황 파악
1 |
|
컬렉션(Collection) 자료형
내장 메소드
append(), extend(), insert()
- a.insert(len(a), x)는 a.append(x)와 동등하다.
1 |
|
del(), remove(), pop()
1 |
|
count(), index()
1 |
|
람다(Lambda)
- 함수는 컴퓨터 과학과 수학의 기초를 이루는 개념이다.
- 람다 대수는 함수를 단순하게 표현할 수 있도록 하여 ‘함수의 계산’이라는 개념을 더 깊이 이해할 수 있게 돕는다.
- 람다는 인라인으로 작성할 수 있기 때문에 전체 함수보다 읽기 쉽다. 따라서 함수 표현식의 규모가 작을 때 람다를 사용하는 것이 좋다.
- 람다 함수의 장점은 함수 객체를 반환한다. 따라서 함수 객체를 인수로 필요로 하는 map 또는 filter와 같은 함수와 함께 사용할 때 유용하다.
1 |
|