3 minute read

숫자형
  • 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() : 파일의 내용 전체를 문자열로 리턴


클래스

Updated: