Language/Python

Python - 데이터 타입(자료형)

beomzh 2023. 7. 7. 13:14
728x90
반응형

숫자형

  • 정수 = int
  • 실수 = float
  • 컴퓨터식 지수 = 4.24e10
  • 8진수 =0o37
  • 16진수 = 0x7A

정수형과 실수형 기억하자

 

# 정수

a=123

print(type(a))

print(a)

# 실수

a=1.2

print(type(a))

print(a)

# 8진수

a=0o10

print(type(a))

print(a)

 

사칙연산은 그냥 계산

# 사칙연산

a=1

b=2

c=3

print(a+b)

print(a-b)

print(a+b-c)

print(a*c)

print(c/3)

 

문자형

문자열 안의 표현식

 

코드 설명
\n 문자열 안에서 줄을 바꿀 때 사용
\t 문자열 사이에 탭 간격을 줄 때 사용
\\ \를 그대로 표현할 때 사용
\' 작은따옴표(')를 그대로 표현할 때 사용
\" 큰따옴표(")를 그대로 표현할 때 사용
\r 캐리지 리턴(줄 바꿈 문자, 커서를 현재 줄의 가장 앞으로 이동)
\f 폼 피드(줄 바꿈 문자, 커서를 현재 줄의 다음 줄로 이동)
\a 벨 소리(출력할 때 PC 스피커에서 '삑' 소리가 난다)
\b 백 스페이스
\000 널 문자

 

문자형은 따옴표 필수

 

# \을 포함한 str

# \ 사용하면 str 문법 안에 " / ' 사용가능

print("\"life is music\"")

 

문자열 더하기

# str2 문자열 연결하기

a = "py"

print(a*3)

# 출력 = pypypy

 

# index 이해하기 프로그래밍에서 index=0부터

b= "life is music"

print(b[3])

# echo e

 

# slice

# c[이상:미만:간경] 매우 중요!!!

c=b[0:3] # 0이상 3미만 ... 2번까지 출력 [0,1,2]

print(c)

# echo lif

c=b[0:] # 미만이 없으면 끝까지

print(c)

# echo "life is music"

 

문자열 포맷팅

# 문자열안에 값 대입시

%s 문자열
%c 문자 1
%d 정수
%% Literal %

number=3

a= "I eat %d apple" %number

print(a)

 

# 문자열 위치 구하기

a= "baby girl"

print("find")

print(a.find("g"))

# 5

 

# 문자열 위치 구하기

print("index")

print(a.index("g"))

# 5

 

# 문자열안에 집어넣기

print("join")

b=",".join(a)

print(b)

# b,a,b,y, ,g,i,r,l

 

# 대소문자 변경 upper / lower

a="asdfgh"

print(a.upper())

v=a.upper()

print(v.lower())

 

# 문자열 교체하기 replace

a= "life is eat anything"

print(a.replace("eat anything","music"))

# life is music

 

# 문자열 나누기 split 리스트 형태로 나눈다.(띄어쓰기 기준으로)

print(a.split())

# ['life', 'is', 'eat', 'anything']

a="a:b:c"

print(a.split(":"))

# ['a', 'b', 'c']

 

리스트

리스트 생성

리스트명 = [요소1, 요소2, 요소3, ...]

 

비어 있는 리스트는 a = list()로 생성할 수 있다.

 

리스트 수정

>>> a = [1, 2, 3]

 >>> a[2] = 4

>>> a

[1, 2, 4]

 

리스트 삭제

>>> a = [1, 2, 3]

>>> del a[1]

>>> a

 [1, 3]

 

리스트 요소 추가 - append

>>> a = [1, 2, 3]

>>> a.append(4)

 >>> a

 [1, 2, 3, 4]

 

리스트 정렬 - sort

>>> a = [1, 4, 3, 2]

>>> a.sort()

>>> a

 [1, 2, 3, 4]

 

리스트 뒤집기 - reverse

>>> a = ['a', 'c', 'b']

>>> a.reverse()

>>> a

['b', 'c', 'a']

 

인덱스 반환 - index

>>> a = [1, 2, 3]

>>> a.index(3)

2

>>> a.index(1)

0

 

리스트 인덱스 위치에 요소 삽입 - insert

>>> a = [1, 2, 3]

>>> a.insert(0, 4)

>>> a

[4, 1, 2, 3]

 

리스트 요소 제거 - remove

>>> a = [1, 2, 3, 1, 2, 3]

>>> a.remove(3)

>>> a

[1, 2, 1, 2, 3]

 

리스트 요소 꺼내기 - pop

>>> a = [1, 2, 3]

>>> a.pop()

3

>>> a

[1, 2]

 

리스트 안의 요소 개수 - count

>>> a = [1, 2, 3, 1]

>>> a.count(1)

2

 

리스트 확장 - extend

>>> a = [1, 2, 3]

>>> a.extend([4, 5])

>>> a

[1, 2, 3, 4, 5]

>>> b = [6, 7]

>>> a.extend(b)

>>> a

[1, 2, 3, 4, 5, 6, 7]

 

딕셔너리

딕셔너리 기본 모습

{Key1: Value1, Key2: Value2, Key3: Value3, ...}

 

ex) dic = {'name': 'pey', 'phone': '010-9999-1234', 'birth': '1118'}

 

딕셔너리 추가하기

>>> a = {1: 'a'}

>>> a[2] = 'b'

>>> a

{1: 'a', 2: 'b'}

>>> a['name'] = 'pey'

>>> a

{1: 'a', 2: 'b', 'name': 'pey'}

>>> a[3] = [1, 2, 3]

>>> a

{1: 'a', 2: 'b', 'name': 'pey', 3: [1, 2, 3]}

 

딕셔너리 요소 삭제하기

>>> del a[1]

>>> a

{2: 'b', 'name': 'pey', 3: [1, 2, 3]}

 

딕셔너리 key 이용해 Value 얻기

>>> grade = {'pey': 10, 'julliet': 99}

>>> grade['pey']

10

>>> grade['julliet']

99

 

Key 리스트 만들기 - keys

>>> a = {'name': 'pey', 'phone': '010-9999-1234', 'birth': '1118'}

>>> a.keys()

dict_keys(['name', 'phone', 'birth'])

 

Value 리스트 만들기 - values

>>> a.values()

dict_values(['pey', '010-9999-1234', '1118'])

 

key,value 얻기 - items

>>> a.items()

dict_items([('name', 'pey'), ('phone', '010-9999-1234'), ('birth', '1118')])

 

key,value 지우기 - clear

>>> a.clear()

>>> a

{}

 

key value 얻기 - get

>>> a = {'name': 'pey', 'phone': '010-9999-1234', 'birth': '1118'}

>>> a.get('name')

'pey'

>>> a.get('phone')

'010-9999-1234'

 

key 딕셔너리 안에 있는지 - in

>>> a = {'name':'pey', 'phone':'010-9999-1234', 'birth': '1118'}

>>> 'name' in a

True

>>> 'email' in a

False

집합자료형

딕셔너리 집합 자료형 기본은 set 이용해 만들수있다.

특징

  • 중복을 허용하지 않는다.
  • 순서가 없다(Unordered).

 

>>> s1 = set([1, 2, 3])

>>> s1

{1, 2, 3}

 

ex)

>>> s1 = set([1, 2, 3, 4, 5, 6])

>>> s2 = set([4, 5, 6, 7, 8, 9])

교집합

>>> s1 & s2

{4, 5, 6}

or

>>> s1.intersection(s2)

{4, 5, 6}

 

 

합집합

>>> s1 | s2

{1, 2, 3, 4, 5, 6, 7, 8, 9}

or

>>> s1.union(s2)

{1, 2, 3, 4, 5, 6, 7, 8, 9}

 

차집합

>>> s1 - s2

{1, 2, 3}

>>> s2 - s1

{8, 9, 7}

or

>>> s1.difference(s2)

{1, 2, 3}

>>> s2.difference(s1)

{8, 9, 7}

 

1 추가 - add

>>> s1 = set([1, 2, 3])

>>> s1.add(4)

>>> s1

{1, 2, 3, 4}

 

값 여러 개 추가하기 - update

>>> s1 = set([1, 2, 3])

>>> s1.update([4, 5, 6])

>>> s1

{1, 2, 3, 4, 5, 6}

 

특정 값 제거하기 - remove

>>> s1 = set([1, 2, 3])

>>> s1.remove(2)

>>> s1

{1, 3}

 

728x90
반응형

'Language > Python' 카테고리의 다른 글

로또 번호 추첨기 [Python]  (0) 2023.09.15
숫자야구 [Python]  (0) 2023.09.15
귀도 반 로썸 아저씨가 만든 언어  (0) 2023.09.05
[Python] 패키지 설정  (0) 2023.07.07
[Python] 변수 variable  (0) 2023.07.07