본문 바로가기

개발 공부/FastAPI

파이썬 개인 공부 정리

2. 파이썬 자료형

- type(a) 함수로 변수 a의 자료형 확인 가능

- 자료형 변환시 str(a) , int(a) 등으로 형변환 시킴 (기초 입력[input]은 str 형으로 들어옴)

a-1. 숫자 자료형 종류

1. 정수형 int

2. 실수형 float

3. 복소수 complex

a-2. 숫자 연산자 종류

## 숫자 연산
a=1
b=2

# +, -, * , /  : 기본 사칙 연산
print(a+b)
print(a-b)
print(a*b)
print(a/b)

# a의 b 제곱
print(a**b)

# a를 b로 나눈 몫
print(a//b)

# a를 b로 나눈 나머지
print(a%b)

# 반올림 : round(a , 소수 b 번째 짜리까지 보이게)
print(round(3.33,1))

# 제곱 : pow(a, b)
print(pow(3,2))

# 나눗셈 : 몫, 나머지 = divmod(a,b)
x,y=divmod(7,2)

# 최댓값 : max(a,b,c,d,...)
print(max(7,5,1,3))

# 최솟값 : min(a,b,c,d...)
print(min(7,5,1,3))

# 합 : sum(집합 형태 :Iterable)
print(sum([1,2,3,4]))

a-3. 숫자 I/O 처리 방식

## 입력

# 한 줄에 여러 개의 숫자 입력 받기
a,b,c = map(int,input('a b c 값 입력').split())

# 문자 2를 기준으로 문자 1을 자른다.
text = input('yyyy.mm.dd')
y,m,d = text.split('.')

# map(함수, 집합 형태-iterable객체)
a,b,c = map(int,['1','2','3'])

#하나씩 적용
text=input('a b c 값 입력')
text=text.split()
a,b,c=map(int,text)
# -> 한줄로 만들면 a,b,c = map(int,input('a b c 값 입력').split())

## 출력

# 숫자와 문자 함께 출력하기 (3) format()
print('{}과 {}의 합은 {}이다.'.format(x,y,x+y))


# 출처 : https://youtu.be/6XInJD_ZBc0

b. 논리 자료형 및 연산자

bool : True 참 / False 거짓 2가지 존재

x or y : x 또는 y

x and y : x 그리고 y

not x : x의 역접

num = int(input('숫자 입력:'))

# 위 에서 부터 하나라도 참이 걸리면 그 조건문을 실행
# if으로만 적으면 다른 조건문으로 구분 
if num%2 == 0:
	print('{}은(는) 짝수 입니다.'.format(num))
elif num%2 == 1:
	print('{}은(는) 홀수 입니다.'.format(num))
else:
	print('error')

c. 문자열 (str)

' ' 또는 ""에 감싸져 있음

## 
text = 'abc'

# 문자열 인덱스
# text[0] == text[-3]
print(text[0]) 
print(text[-3])

# 문자열 슬라이스
text = 'abcdfgh ijk'

# bc 출력 : [1:2] 가 아닌 1개 더 인 [1:3]을 해야 함 
print(text[1:3])

# abc 출력 : 0 부터 3 앞인 2까지 다
print(text[:3])

#  dfgh ijk 출력 : 3부터 끝까지
print(text[3:])

# 처음 부터 끝까지
print(text[:])

# a~b-1 까지 n칸 간격
# 2칸 간격이면 acfh 식으로
print(text[a:b:n])

# 문자열 전체 뒤집기
print(text[::-1])

# 출력 지정 : format(a,b,c,...)
text = 'abcde {} {}'
print(text.format('abc',123))

# 대체 하기 : replace(a,b)
text = 'abcde ABC ABC'
print(text.replace('ABC','a'))

# 자르기 : split(a) [a가 빈칸이면 공백으로 자름]
text ='abcde a/b/c a'
a,b,c=text.split('/')

# 합치기 : a.join()
# a/b/c/d/e
text = 'abcde'
print('/'.join(text))

# 개수 확인하기 : count(a)
text = 'abcdea'
print(text.count('a'))

# 제거하기 : strip(a)/ lstrip(a) / rstrip(a)
# 양 쪽 제거 / 왼쪽 제거 / 오른쪽 제거
# 중간 값 제거 못함
text = ' abcde ' 
print(text.strip())

# 인덱스 찾기 : find(a) , index(a)
# find 는 없는 값은 -1, index는 없는 값 에러 출력
text ='ABC ABC'
print(text.find('A'))
print(text.index('A'))

# 확인하기 : isalpha() / isdigit() / isalnum() / isupper() / islower()
알파벳으로만/ 숫자만 / 숫자와 알파벳 조합 / 알파벳 중에서 대문자 / 알파벳 중에서 소문자
print(text.isalpha())

# 대/소문자 바꾸기 : upper() / lower()
print(text.upper())

# 0 채우기 : zfill()
# 부족한 부분을 0을 채워서 넣어줌 (3월 : 03월)
print(y.zfill(4))

d. 리스트 list

- 데이터를 순차적으로 열거형으로 저장

e. 튜플 tuple

- 값을 변경할 수 없는 열거형 집합

f. 세트 set

- 순서가 없고 중복이 허용되지 않는 집합

g. 사전 dictionary

- 키와 값의 쌍으로 구성된 집합

h. 반복문 ( for/while )

## while 문

a = int(input('a:'))
while a>=0:
	print('실행')
    a=int(input('a:'))
    
text = input('e 또는 E 입력 시 종료')

whlie text!='e' and text!='E':
	text=input('e 또는 E 입력시 종료')

print('종료')

## for 문

i. 기타 제어문

-


728x90
반응형

'개발 공부 > FastAPI' 카테고리의 다른 글

[FastAPI] FastAPI를 적용하며  (2) 2024.01.07
[Python] Memory Leak 이해  (0) 2023.01.13
[Python] Python 리스트 사용법 정리  (0) 2022.03.07