파이썬

2023. 4. 19. 17:03학교수업

기본 타입 : 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