티스토리 뷰

1. python의 데이터 타입


pythonbuilt-in data type(이미 정의되있는 데이터 타입)
- Numeric(숫자) : int, float, complex
- Text Sequence(문자열) : str

- Sequence(순서) : list, tuple, range
- Mapping : dictionary

- Bool : True or False

- Set 

 

 

Bool

True, False 판단

 

1. 빈 문자열은 False로 간주 => "",''
2. 빈 리스트는 False로 간주 => []
3. 빈 튜플도 False로 간주 => ()
4. dictFalse로 간주 => {}
5. 숫자 0False
6. NoneFalse

 

비트 연산자의 True, False 

a = 5
b = 0

print(a & b) 	# 0101 & 0000 = 0000
print(a | b) 	# 0101 | 0000 = 0101	
print(a ^ b)	# 0101 ^ 0000 = 0101

 

 

Set

집합 자료형이고 중복을 허용하지 않는다, 순서 존재 x 자료형

my_set = {1, 2, 3, 4, 1, 2}
print(my_set)			# { 1, 2, 3, 4 }

my_list = [1, 2, 3, 4, 1, 2]
my_set = set(my_list)	
print(my_set)			# { 1, 2, 3, 4 }

my_str = "Hello"
my_set = set(my_str)
print(my_set)			# {'o', 'H', 'e', 'l'} 순서 상관 x

 

 

{ } 기호 사용

set = { 1, 2, 3 }
dictionary = { "key" : "value" }

# set과 dictionary 모두 {} 사용하지만 다른 사용법

 

set에서 사용하는 연산자
합집합(union: | ), 교집합(intersection : & ), 차집합(difference: - )

s1 = {1, 2, 3, 4}
s2 = {3, 4, 5, 6}

print(s1 | s2)  # {1, 2, 3, 4, 5, 6}
print(s1 & s2)  # {3, 4}
print(s1 - s2)  # {1, 2}

 

data type 외 날짜관련 사항

date와 datetime = 날짜(연월일), 시간(시분초)

from datetime import date, datetime
today = date.today()
print(today)    # 2020-07-15

my_str = "오늘날짜는 {}년 {}월 {}일 입니다."
my_str = my_str.format(today.year, today.month, today.day)
print(my_str)

my_datetime = datetime.today()
print(my_datetime)
print("현재 시간은 {}시 {}분 입니다.".format(datetime.today().hour, my_datetime.minute))

 

날짜 계산

day, hour 계산 > timedelta 사용

today = date.today()    # 오늘 날짜 구함
days = timedelta(days=-20)
print(today + days)

today = datetime.today()
hours = timedelta(hours=-5)
print(today+hours)

 

year, month 계산 > 외부 모듈 dateutil 사용

예) 오늘 날짜가 3월 31일 > 1달전 날짜는 2월 28일

#연도와 월에 대한 timedelta는 존재하지 않음

from datetime import date
from dateutil.relativedelta import relativedelta

today = date.today()
months = relativedelta(months=-5)
print(today + months)

 

문자열로 되어 있는 날짜를 진짜 날짜로 변환해서 연산하기

from dateutil.parser import parse
my_date = parse("2019-01-30") # 문자열일 경우 parse
my_date = datetime(2019, 1, 30) # 숫자일 경우 datetime
print(my_date)

 

'개발 > python' 카테고리의 다른 글

test  (0) 2020.07.16
[2020.07.16] 객체지향  (0) 2020.07.16
[2020.07.15] 함수  (0) 2020.07.15
[2020.07.15] python 입출력, 제어문,반복문  (0) 2020.07.15
[2020.07.14] Python 기초와 데이터타입  (0) 2020.07.14
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함