기본 타입 : str int float
출력 print
문자열
따옴표 쓰면 다 문자열
+ 문자열 연결
* 문자열 지정된 수만큼 반복
'''(삼중 따옴표) : 문자열 여러 줄 사용 가능
# 주석 : 소스 설명
연산자 +, -, *, /, %, //, **
// 몫 나누기
** 거듭제곱
_ 마지막 실행 결과값 저장
print에서는 콤마(,)로 구분하여 출력
표현식 문자열 실행 함수 eval()
type 함수 : 자료형 알려줌
divmod(1,2) : 1나누기2 , 1나머지2
input() 입력
변환 str(), int(), float()
문자 길이 반환 : len()
list 시작은 0부터 반대로는 -1부터
str[start:end] : start ~ end-1
start end 둘 다 비우면 문자열 전체 반환
str[start:end:step] : 간격을 step만큼
step은 음수도 가능
ord : 코드 번호 반환
chr : 해당 코드 번호 문자 반환
min, max
인자 1개 : 문자열 구성 문자 중 최소, 최대 반환
인자 문자열 2개 이상 : 문자열 중 최소 최대 반환
인자 숫자 2개 이상 : 최소, 최대 값 반환
str.replace(a,b) : a를 b로 바꿈
str.replace(a,b,count) : a를 b로 바꾸는데 count개수 만큼만
immutable : 문자열은 수정 불가능
count : 부분 문자열 출현 횟수 반환
join : 문자열의 문자와 문자 사이 원하는 문자열 삽입
str.find : 없으면 -1
str.index : 없으면 ValueError
역순 : rfind(), rindex()
str.split(',') : 괄호 안 특정 문자열 값 있는 경우 구분자로 사용하여 나눔
center() : 문자열 중앙 배치
strip() : 문자열 앞뒤 특정 문자 제거
ex) lstrip, rstrip, strip
format(인자) : ex) print('{0} * {1} = {2}'.format(a,b,a*b))
1:d나 0:5d 등으로 사용 가능 0:5d 0번째 index 5칸 사용
1:4:5f : 1번째 index 4칸 사용 소수점 5번째까지 표현
print에 %d,%x,%o,%f,%c,%s 등 지원
'%d %x' % (30, 20)
print('%10s' % 'python')
print('%9d' % 99) 등 사용가능
f-string : python 최신 표준 : string을 직관적 표현
ex) x=1 print(f'{x+1:10.d}' 출력) -> x+1한 값을 10칸을 사용하여 출력
bool : true false 지원
in : 목록에 값이 있는지 ex) A in B
조건문
if 조건 :
elif 조건 :
else :
반복문
while <조건>:
for 변수 in <시퀀스>
for와 while뒤에는 else를 사용할수있다
-> else는 반복이 끝난 경우 실행
range(시작,끝,증가값)
random 함수 : random.randint(시작,끝) :시작~끝 값 랜덤 반환
continue 이후 몸체 실행X -> 다음 반복
break 인접 반복문 탈출
리스트
[] : 빈 리스트 생성
list() : 빈 리스트 생성
append() : 가장 뒤에 항목 추가
list.count : 리스트 값 개수
list.index(값) : 인자 값 위치 반환(첫 번째)
리스트[start:stop:step]
리스트.insert(첨자, 항목) : 삽입 자리가 있으면 뒤로 밀어버림
리스트.remove(항목) : 제거
pop(첨자) : 첨자 위치 제거
pop() : 마지막 항목 제거
del : 항목 삭제, 부분 삭제
리스트.clear() : 빈 리스트 만듦
리스트.extend(list) : 리스트에 인자 list를 가장 뒤에 추가
+연산자로 리스트 연결 가능
*연산자로 지정 횟수만큼 반복
리스트.reverse() : 항목 순서 뒤집음
리스트.sort() : 항목 순서 정렬
sorted는 내장함수 : sorted(list,reverse=True)
리스트 컴프리헨션 : 리스트 = [항목연산식 for 항목 in 시퀀스 if 조건]
ex) even = [i for i in range(2,11,2) if i%3==1]
리스트 대입연산자 = : 얕은 복사 (같은 리스트 가리킴)
깊은복사 : 새로운 리스트 만들어 복사, 슬라이스, copy(), list함수
문장 is : 같으면 True 다르면 False
튜플
리스트와 달리 항목의 순서, 내용 수정 불가능
콤마로 구분
() : 빈 튜플 생성
tuple() : 빈 튜플 생성
항목이 하나 이상인 튜플 표현은 마지막에 콤마 사용
+ 튜플 연결
* 횟수만큼 반복
sorted : 순서 정렬해서 반환
del : 튜플 변수 제거
딕셔너리 : 키:값, 전체는 중괄호 사용
빈 딕셔너리 : {}, dict()
키, 값 형식의 리스트, 튜플 모두 사용 가능
단순 문자열은 월='monday' 처럼 키=값 항목 나열 지정 가능
키로 정수, 실수 사용 가능
딕셔너리 키로 수정 불가능 객체 모두 사용 가능
month 딕셔너리에서 month[0]은 첨자가 아니라 키이며 키가 없는 경우 KeyError
딕셔너리 메소드
keys : 키로만 구성된 리스트 반환 for문에 사용하면 딕셔너리 모든 항목 참조 구문 사용 가능
items : (키,값) 쌍의 튜플이 들어있는 리스트 반환
values : 값으로만 구성된 리스트 반환
get : 키로 조회, 키가 없을시 오류발생X None 반환
clear : 모든 항목 제거
del : 딕셔너리 변수 자체 제거
update(딕셔너리) : 인자가 다른 딕셔너리와 합병, 인자 딕셔너리에 동일 키가 있다면 인자 딕셔너리값으로 대체
콜렉션 : 중복요소X, 순서X 원자의 모임
set() : 공집합 만들기 (수정 가능한 리스트나 딕셔너리는 집합 원소로 사용 불가)
한개 추가 : add
여러개 추가 : update
제거 : remove 실패시 KeyError
discard(원소) : 제거 실패해도 에러X
pop() : 임의값 가져와서 제거 및 반환(순서 X) : 보통 앞에꺼 부터 지워지지만 set자체가 순서가 없다)
clear() : 모든 요소 제거
in : 내부 존재 확인
len : 길이 확인
합집합 : union, update, 연산자 |
교집합 : intersection(), 연산자 &
차집합 : difference(), 연산자 -
여집합 : symmetric_difference(), 연산자 ^
집합 축약 대입 연산자 : intersection_update(), |=, &=,-=,^=
zip
동일 수의 튜플, 리스트를 묶어주는 함수
dict(zip(튜플,리스트))를 통하여 딕셔너리 생성가능
enumerated() : 0부터 시작하는 첨자와 항목 값의 튜플 리스트 생성
list(튜플) : 튜플 -> 시퀀스(리스트)
set(리스트) : 리스트 -> 집합
딕셔너리는 다른 시퀀스로 변환시 항목이 키로만 구성
변환
list(), tuple(), set()
list [] tuple() set{}
'학교수업' 카테고리의 다른 글
데이터베이스 14주차 (0) | 2022.12.06 |
---|---|
컴퓨터 그래픽스 응용 13주차 (0) | 2022.11.30 |
KdTree 3D transform (0) | 2022.11.29 |
컴퓨터 그래픽스 응용 12주차 (0) | 2022.11.23 |
데이터베이스 12주차 (0) | 2022.11.22 |