기초/파이썬

파이썬 기초 1. Data Type & Operation

2^7 2024. 9. 1. 14:49

Data Type

데이터 타입은 프로그래밍 언어에서 값(value)를 저장하고 조작할 때 사용되는 데이터 종류를 의미

변수에 저장된 데이터의 성격을 정의하며, 데이터에 사용할 수 있는 연산이나 함수의 종류를 결정

1. 숫자형(Numeric)

  • 정수형(int) : 123, 0o77, 0off
    • 소수점이 없는 숫자를 의미, 양수, 음수, 0을 포함하여 사칙연산 및 수학적 연산이 가능
  • 실수형(float) : 3.14159, 2e-6, 7e+2
    • 소수점을 포함하는 숫자
  • 복소수형(complex) : 8 + 9i

2. 문자형(Character)

  • 문자형(str) : 'a', 'Python'
    • 텍스트 데이터를 저장
    • 작은따옴표(' '), or 큰따옴표(" ")로 감싸서 표현

3. 논리형(Logical)

  • 논리형(bool) : True, False
    • 논리연산에 사용되며 True, False 두가지 값만 가지는 데이터 타입

Operation

 

연산자 : 변수나 값에 대한 특정 작업을 수행하는 기호나 키워드

다양한 연산자를 통해 데이터 간의 연산, 비교, 논리적 처리 등을 할 수 있다.

 1. 산술 연산자(사칙연산)

  • + : 더하기
  • - : 빼기
  • * : 곱하기
  • / : 나누기 (실수)
  • // : 나누기 (몫)
  • % : 나머지
  • ** : 거듭제곱
a = 10
b = 3

print(a + b)  # 13
print(a - b)  # 7
print(a * b)  # 30
print(a / b)  # 3.3333...
print(a // b)  # 3
print(a % b)  # 1
print(a ** b)  # 1000

2. 비교 연산자

  • == : 같음
  • != : 같지 않음
  • > : 큼
  • < : 작음
  • >= : 크거나 같음
  • <= : 작거나 같음
a = 10
b = 20

print(a == b)  # False
print(a != b)  # True
print(a > b)  # False
print(a < b)  # True
print(a >= b)  # False
print(a <= b)  # True

3. 논리 연산자

  • and : 둘 다 참이면 참
  • or : 둘 중 하나라도 참이면 참
  • not : 참을 거짓으로, 거짓을 참으로 반전
a = True
b = False

print(a and b)  # False
print(a or b)  # True
print(not a)  # False

4.할당 연산자

변수에 값을 할당 하거나 값을 업데이트 하는데 사용

  • = : 값 할당
  • += : 더한 후 할당
  • -= : 뺀 후 할당
  • *= : 곱한 후 할당
  • /= : 나눈 후 할당
  • %= : 나머지를 계산한 후 할당
  • //= : 몫을 계산한 후 할당
  • **= : 거듭제곱을 계산한 후 할당
a = 10
a += 5  # a = a + 5
print(a)  # 15

a *= 2  # a = a * 2
print(a)  # 30

a **= 2  # a = a ** 2
print(a)  # 900

5. 비트 연산자

정수의 비트 단위로 연산을 수행

  • & : AND 연산
  • | : OR 연산
  • ^ : XOR 연산
  • ~ : NOT 연산
  • << : 비트 이동 (왼쪽)
  • >> : 비트 이동 (오른쪽)
a = 10  # 1010 in binary
b = 4   # 0100 in binary

print(a & b)  # 0 (0000)
print(a | b)  # 14 (1110)
print(a ^ b)  # 14 (1110)
print(~a)     # -11 (inverse of 1010 + 1)
print(a << 1)  # 20 (10100)
print(a >> 1)  # 5 (0101)

6. 멤버십 연산자

특정 값이 시퀀스(리스트 , 튜플, 문자열 등)에 포함되어 있는지를 확인

  • in : 값이 시퀀스에 존재하면 참
  • not in : 값이 시퀀스에 존재하지 않으면 참
fruits = ["apple", "banana", "cherry"]

print("apple" in fruits)  # True
print("grape" not in fruits)  # True

7.식별 연산자

두 변수가 동일한 객체를 가리키고 있는지 확인

  • is : 두 변수가 동일한 객체를 가리키면 참
  • is not : 두 변수가 동일한 객체를 가리키지 않으면 참
a = [1, 2, 3]
b = a
c = [1, 2, 3]

print(a is b)  # True (a와 b는 동일한 객체)
print(a is c)  # False (a와 c는 다른 객체)
print(a is not c)  # True

8. 절댓값

  • abs(-5)

9. 진법 변환

  • hex(16)  - 16진법
  • oct(8)    - 8진법
  • bin(2)    - 2진법
number = 255

binary = bin(number)
octal = oct(number)
hexadecimal = hex(number)

print(binary)      # 출력: 0b11111111
print(octal)       # 출력: 0o377
print(hexadecimal) # 출력: 0xff

10. 반올림

  • round(28.35)  = 28
  • round(28.78)  = 29
  • round(28.78, ndigits = 0)   = 29.0
  • round(28.78, ndigits = 1)   = 28.8
  • round(22.78, ndigits = -1)  = 20.0
  • round(28.78, ndigits = -1)  = 30.0
  • round(28.457, ndigits = 2)  = 28.46

외부 모듈

1. import math

  • math.pi : 3.141592653589793
  • math.e : 2.718281828459045
  • math.ceil(24.99) : 25
  • math.floor(24.99) : 24
  • math.trunc(24.99) : 24
  • math.log(100, 10) : 2.0
  • math.log10(100) : 2.0
  • math.log(100,2) : 6.643856189774725
  • math.log2(100) : 6.643856189774724
  • math.pow(9,2) : 81.0
  • math.sqrt(81) : 9.0
  • math.sin(45) : 0.8509035245341184
728x90