파이썬
숫자형
-
8진수 (octal) : 숫자가 0o 또는 0O로 시작
-
16진수 (hexadecimal) : 숫자가 0x로 시작
문자열
-
큰따옴표 또는 작은따옴표로 감싸기
-
역슬래시(\)를 이용해서 큰따옴표, 작은따옴표 등 기호를 삽입 가능
-
줄을 바꾸고 싶다면 ‘\n’ 삽입. 그러나 읽기 불편하므로 대신 ''' ''' 로 감싸는 방법을 사용
문자열 연산
- 문자열을 +로 합칠 수 있음
- len() : 길이
- a[0] : 인덱싱 / a[0:4] : 슬라이싱
- 슬라이싱에서 끝 번호는 포함되지 않음
- 음수를 적으면 인덱스가 마지막 기준
- 문자열 포매팅
- ” ~~ %d ~~ “ % number
- ” ~~ %d ~~ %s ~~ “ % (number, sentence)
- 포맷 코드 : %d, %s 등
- %10s : 문자열이 총 10칸으로 우측 정렬
- %-10s: 문자열이 총 10칸으로 좌측 정렬
- %0.4f : 소수점 4칸까지 출력. 0은 길이에 상관하지 않음을 의미
- % 10.4f : 소수점 4칸까지, 총 10칸
- f 문자열 포매팅
- 문자열 앞에 f 접두사를 붙여 사용하는 방식. f’~~ {name} ~~ {age}’ 이런 식으로 사용 가능
- {“hi”:<10} : 총 10칸, 좌측 정렬
- {“hi”:>10} : 총 10칸, 우측 정렬
- {“hi”:^10} : 총 10칸, 가운데 정렬
- {“hi”:=^10} : 총 10칸, 가운데 정렬하고 ‘=’로 공백 채우기
문자열 함수
- a.count(‘b’) : 문자열 내 b의 개수
- a.find(‘b’) : 문자열에서 b가 처음 나온 위치
- a.index(‘b’) : 문자열에서 b가 처음 나온 위치. b가 없으면 오류
- ”,”.join(‘abcd’) : 각각의 문자 사이에 , 삽입
- a.upper() : 대문자 변환
- a.lower() : 소문자 변환
- a.strip() : 양쪽 공백 지우기
- a.lstrip() : 왼쪽 공백 지우기
- a.rstrip() : 오른쪽 공백 지우기
- a.replace(“Life”, “AAA”) : 문자열 내의 특정한 값을 다른 값으로 치환
- a.split() : 공백 기준 문자열 나눔
- a.split(‘,’) : , 기준 문자열 나눔
리스트
- 문자열과 마찬가지로 인덱싱, 슬라이싱 가능
- +로 더하기, *로 반복하기 가능
- len() : 리스트 길이
- del a[1] : 리스트 요소 삭제
- del a[2:] : 리스트 요소 여러 개 삭제
- a.append(4) : 리스트 요소 추가
- a.sort() : 리스트 정렬
- a.reverse() : 리스트 뒤집기
- a.index(3) : 인덱스 값 반환
- a.insert(0, 4) : a[0] 위치에 4 삽입
- a.remove(3) : 리스트의 첫 번째 3 삭제
- a.pop() : 리스트 마지막 요소 리턴 후 삭제
- a.pop(2) : 리스트의 2번 요소 리턴 후 삭제
- a.count(1) : 리스트에 있는 1의 개수
- a.extend([1, 2]) : 리스트 더하기 (괄호 안에는 리스트만 올 수 있음)
튜플
: 리스트와 동일하나, 값 추가, 수정, 삭제가 불가능하다.
인덱싱, 슬라이싱은 가능하다. 값을 수정하지 않는 더하기나 곱하기는 허용된다.
len()으로 길이를 구할 수 있다.
딕셔너리
- a.keys() : 딕셔너리 a의 key로 배열 만들기
- a.values() : 딕셔너리 a의 value로 배열 만들기
- a.items() : 딕셔너리 a의 key와 value를 튜플로 묶어서 배열 만들기
- a.clear() : 모두 삭제
- a.get(‘name’) : key가 ‘name’인 value 구하기. 없으면 None 리턴
- a.get(‘name’, ‘foo’) : key가 ‘name’인 value 구하기. 없으면 ‘foo’ 리턴
- ‘name’ in a : key 중 ‘name’이 있는지 확인
집합
- s1 = set([1, 2, 3]) : 집합 생성
- s2 = set(“Hello”) : 집합을 문자열로 생성
- l1 = list(s1) : 리스트로 변환
- t1 = tuple(s1) : 튜플로 변환
- s1 & s2 : 교집합
- s1.intersection(s2) : 위와 동일. 교집합
-
s1 s2 : 합집합 - s1.union(s2) : 위와 동일. 합집합
- s1 - s2 : 차집합
- s1.difference(s2) : 위와 동일. 차집합
- s1.add(4) : 값 추가
- s1.update([4, 5, 6]) : 여러 개의 값 추가
- s1.remove(2) : 값 제거
리스트 컴프리헨션
: 리스트를 직관적으로 만드는 방법
- squares = [x**2 for x in range(1, 6)] : 리스트 컴프리헨션 문법
- result = [num*3 for num in a]
- result = [num*3 for num in a if num%2 == 0] : 조건식 적용
함수
- def 함수명(*args) : 매개변수로 튜플 받기 (리스트를 받아도 튜플화)
-
def 함수명(**kwargs) : 매개변수로 딕셔너리 받기
- 매개변수 값을 언패킹해서 넣을 수 있음. 튜플의 경우 *args, 딕셔너리의 경우 **kwargs를 그대로 입력
사용자 입출력
- input() : 사용자의 키보드 입력을 문자열로 저장
- print() : 괄호 안의 내용을 출력
- print(i, end=’ ‘) : end에 적힌 값을 출력값 이후에 출력
파일 읽고 쓰기
- f = open(‘새파일.txt’, ‘w’) : 새로운 파일 생성
- r : 읽기 모드 / w : 쓰기 모드 / a : 내용 추가
- w로 열게 되면, 기존 파일의 내용이 모두 지워진다. 기존 파일이 없다면 새로 생성
- f.close() : 열려 있는 파일 객체 닫기. 파이썬 프로그램은 종료 시 자동으로 열려 있는 파일을 닫아주지만, 명시하는 것을 권장
- f.write(data) : 파일의 마지막에 data 쓰기
- f.readline() : 파일의 첫 번째 줄 읽기. 읽을 줄이 없다면 빈 문자열(‘’) 리턴
- f.readlines() : 파일의 모든 줄을 읽어서, 리스트로 반환
- f.read() : 파일의 내용 전체를 문자열로 리턴