!---------- Day 1 ----------
key point : 파이썬 기본구조, 입/출력 함수, 숫자형, 문자열
! 파이썬 기본구조
플랫폼에 독립적이어 여러 운영체제에서 사용가능합니다.
인터프리터식, 객체지향적, 동적타이핑 대화형 언어입니다.
구글의 3대 개발(C, Java, Python)언어
고급 언어는 기계가 이해할 수 있도록 컴파일로 해주어야합니다.
컴파일러 - 문서 전체를 번역합니다.
인터프리터 - 문서의 각 라인을 번역합니다.
파이썬은 여백이 중요합니다.
* 여백 : 탭으로 입력하며 같은 수준의 코드들은 반드시 동일한 여백을 가져야합니다.
* 자료형 검사
프로그램이 자료형의 제약 조건을 지키는지 검증
컴파일 타임(정적 타이핑) - 실행 전에 자료형을 검사
런타임(동적 타이핑) - 실행 시간에 자료형을 검사
!---------- Day 2 ----------
! 입/출력 함수
[형식1]
print(값1, 값2... , sep = 구분자 , end= 종료문자 )
end 생략시 print별로 줄 나뉨 end=""로 값의 출력들을 한 줄 나열 가능합니다.
print(True)는 True, print(not True)는 False, print(5 > 3)는 True
>> 서식 문자열
[형식2] print(서식 문자열 % (값1, 값2,...))
%5d : 5는 자리수이고 d는 10진수 오른쪽부터 채웁니다.
문자열 연결은 '+'
print(문자열 + 숫자형)으로 작성할 경우 오류 발생
예를 들어 print("a =" + 5)는 오류
문자열과 숫자형의 자료형 분리는 print("a =", 5)처럼 콤마 기호로 사용하거나
서식문자열 사용하여 print("a = %d" % 5)처럼 출력합니다.
>> 입력 함수 : input()
input()함수로 받는 값은 문자열로 인식합니다.
input()을 숫자로 받고 싶은 경우 형 변환을 해야합니다.
[형식1] 변수 = input("출력 문자열")
[형식2] 변수1, 변수2 = input("출력 문자열").split(분리문자)
분리문자에 맞추어 입력값을 입력하면 분리문자를 기준으로 나누어 입력 됩니다.
input().split()처럼 split()를 공백으로 놔두면 공백1칸을 기준으로 값을 구분합니다.
!---------- Day 3 ----------
! 숫자형
정수형 (양, 음, 0)과 실수형 (소수점 포함)으로 구분됩니다.
나눗셈 기호 혼동 주의 : / 실수형 몫, // 정수형 몫, % 나머지
! 문자열
쌍따옴표 또는 홀따옴표 모두 사용 가능합니다.
따옴표 문자 그 자체를 뜻하려면 백슬래시와 함께 표기합니다.
>> 여러 문자열 대입
""" 문자열 """" 혹은 '''문자열'''
>> 문자열 더하기 : '+' 기호
>> 문자열 반복하기 : '*'기호
>> 문자열 길이 구하기 : len()
>> 문자열 인덱싱
변수[번호] 번호는 양수 인덱스와 음수 인덱스가 있습니다.
양수 인덱스는 0부터 시작하며 앞에서부터 읽습니다.
음수 인덱스는 -1부터 시작하며 뒤에서부터 읽습니다.
>> 문자열 슬라이싱
변수[시작 번호:끝 번호] : 시작번호 ~ 끝 번호 -1까지 (끝은 미만이라 생각)
각 번호 생략 가능하며 예로 a[:3]은 0부터 3미만, a[3:]은 3부터 끝까지, a[:]은 전체 출력
또한 증가값도 설정가능하며 증가값은 생략가능합니다.
변수이름[시작번호:끝번호:증가값]
>> 문자열 메소드
[형식] 문자열.메소드
○ find(값) : 값이 처음 검색되는 위치, 못 찾으면 -1 반환
○ index(값) : find()와 동일한 기능이나 못 찾으면 오류가 발생
○ replace(값1, 값2) : 값1을 찾아 값2로 교체한다
○ count(값) : 값의 개수
○ split(값) : 값을 기준으로 문자열을 분리 후 리스트로 반환
○ upper(값) : 대문자로 변경
○ lower(값) : 소문자로 변경
!---------- Day 4 ----------
key point : 리스트, 튜플, 딕셔너리, 집합
! 리스트 (List)
여러 개의 자료를 하나의 변수로 관리하는 자료형입니다.
대괄호를 사용하여 선언합니다.
[형식1] 리스트명 = [값1, 값2 ...]
[형식2] 리스트명 = list([값1, 값2 ...])
>> 리스트 더하기 : '+' 기호로 리스트 값이 가로로 쌓인다.
>> 리스트 반복하기 : '*' 기호로 리스트 값이 반복됩니다.
>> 리스트 길이 구하기 : len(리스트명)
>> 리스트 인덱싱 : 리스트명[index]
>> 리스트 슬라이싱 : 리스트명[start: end]
start ~ end -1
>>리스트 메소드
○ 리스트 추가 : 리스트명.append(값)
○ 리스트 삽입 : 리스트명.insert(index, 값)
○ 리스트 수정 : 리스트명[위치] = 값
○ 리스트 삭제 :
1) 하나의 값 찾아서 삭제 : 리스트명.remove(값)
2) 리스트에서 위치를 찾아 삭제 : del 리스트명[index]
○ 리스트 복사 : 변수 = 리스트명.copy()
○ 리스트 역순 : 리스트명.reverse()
○ 리스트 정렬 : 리스트명.sort(), 내림차순은 리스트명.sort(reverse = True)
○ 리스트 개수 : 리스트명.count(값)
○ 리스트 값 저장 위치 : 리스트명.index(값)
○ 리스트 출력 후 삭제 : 리스트명.pop(index)
○ 리스트에 리스트추가 : 리스트명.extend(리스트)
>> 이차원 리스트
[형식] 리스트명 = [[값1,값2...],[값1,값2...]]
!튜플
리스트와 같지만 값을 변경할 수 없다는 점이 다름
소괄호로 사용합니다.
[형식1] 튜플명 = (값1, 값2...) 단, 값이 하나인 경우 튜플명 = (값,) 뒤에 콤마 반드시 붙이기
[형식2] 튜플명 = tuple((값1,값2,...))
>> 튜플 더하기(쌓기) : "+"
>> 튜플 곱하기(반복) : "*"
>> 튜플 길이 구하기 : len(튜플)
>> 튜플 인덱싱 : 튜플명[index]
>> 튜플 슬라이싱 : 튜플명[start:end]
!딕셔너리
'Key'와 'value'를 한 쌍으로 저장합니다.
사전처럼 찾는 자료형
중괄호로 사용하여 선언합니다.
단, 키는 변하지는 않는 값을 사용하며 값은 변하는 값, 변하지 않는 값 모두 사용 가능합니다.
[형식1] 딕셔너리명 = {키1:값1, 키2:값2,...}
[형식2] 딕셔너리명 = dict({키1:값1, 키2:값2,...})
딕셔너리는 인덱스가 아닌 key를 이용하여 vlaue를 반환합니다.
[형식] 딕셔너리명[키1]
key가 중복될 경우 마지막 키가 반환됩니다.
>> 딕셔너리 추가 : 딕셔너리명[key] = value
>> 딕셔너리 삭제 : del 딕셔너리명[키]
>> 딕셔너리 메소드
○ key리스트 반환 : 딕셔너리명.keys()
○ Value리스트 반환 : 딕셔너리명.values()
○ key:Value 쌍 반환 : 딕셔너리명.items()
○ key:Value 쌍 모두 삭제 : 딕셔너리명.clear()
○ key를 이용하여 Value 반환 : 딕셔너리명.get(key)
○ 딕셔너리 내 key 존재 여부 반환 : key in 딕셔너리명
! 집합 (Set)
중복을 허용하지 않고, 순서가 없는 자료형
중괄호를 사용하여 선언합니다.
[형식1] 집합명 = {값1, 값2,...}
[형식2] 집합명 = set({값1, 값2,...})
[형식3] 집합명 = set(문자열)
>> 집합 관련 메소드
○ 하나의 값 추가 : 집합명.add(값)
○ 여러 개의 값 추가 : 집합명.update([값1, 값2,...])
○ 하나의 특정 값 제거 : 집합명.remove(값)
○ 교집합 : 1) 집합1.intersection(집합2) 2) 집합1&집합2
○ 합집합 : 1) 집합1.union(집합2) 2) 집합|집합2
○ 차집합 : 1) 집합1.difference(집합2) 2) 집합1-집합2
'자격증' 카테고리의 다른 글
컴퓨터 공학 기초 (0) | 2023.03.05 |
---|---|
프로그래밍 언어: 자바편 (0) | 2023.03.04 |
프로그래밍 언어 : C언어 편 (0) | 2023.03.03 |
댓글