매일공부

[PY4E] 파이썬 변수, 표현식, 코드 정리; type int float str bit_length 본문

Programming/Python

[PY4E] 파이썬 변수, 표현식, 코드 정리; type int float str bit_length

aram 2022. 7. 5. 18:31
  • Python
    • 플랫폼(hardward+OS) 독립적 언어 : OS에 상관없이 한번 프로그램 작성하면 사용 가능
    • interpretor 인터프리터 언어(=통역기를 사용하는 언어) : 소스코드를 실행시점에 바로 해석해서 라인단위 즉시 실행
    • 객체(=실체) 지향 언어 : 재사용성을 고려한 언어, 문제의 구성요소별 정의 > 각 요소의 기능(메서드)과 정보(속성) 정의 > 요소들을 결합하고, 프로그램을 작성하는 방식
    • 동적 타이핑 언어 : 별도의 타입 선업 없이 실행하는 시점에 프로그램이 사용해야할 데이터에 대한 타입 결정
    • 함수적 프로그래밍 언어 : 함수를 객체 취급, 변수 저장 , 함수인수로 전달, 함수 리턴
    • 처음 C언어로 구현됨(C언어는 컴파일러 언어 - 기계어 변환 과정을 거침)

 

  • 상수 : 고정값
    • 숫자 - 12, 1, 1538 등
    • 문자열 - 'Hello' / "world"

 

  • 예약어
    • 파이썬에 미리 예약되어 있는 언어
    • 변수 이름이나 식별자로 사용 불가

 

  • 변수 identifier : 데이터를 메모리에 저장하고 처리를 위해 메모리 주소값 대신에 참조할 이름
    • =  변수에 상수 데이터를 저장, 지정한다는 뜻(대입문)
    • 변수 이름 규칙 naming rule
      - 타인이 봤을 때 한눈에 이해가 가능하도록 짓는 것이 best
      - 알파벳, 숫자, 밑줄(_)로 선언 가능
      - 공백, +, - , 첫글자 숫자, 예약어, 키워드 등은 사용 불가
      - 대소문자 구분은 모두 다르지만, 오타 가능성↑ 추천X
    • 동적 타입(Dynamic Type)  - 실행 중에 변수 타입을 바꿀 수 있음
    • del 명령으로 삭제
x = 3
y = 15,000

z = x * y  # z <- x * y 대입한다는 뜻


#좋은 변수 예시
hours = 3
rate = 15,000

pay = hours * rate

 

  • 주석 # (직접입력 or Ctrl key + /)
    • # 다음 내용은 무시
    • 코드가 어떤 일을 하는지 설명
    • 부가설명 가능
    • 여러줄 주석(Multi-line)은? ''' or """
'''
여러 줄 주석을 사용할때는
이렇게 사용 가능
'''

"""
아니면 이렇게도 가능
"""

 

  • 자료형 : 자료가 가지는 형
    • Numbers 기본 자료형
      : 수치를 관리하는 자료형 
      : 숫자 - 정수 자료형 int
                - 부동 소수점 수 float
                - 수보다 넓은 복소수 complex
    • Sequences 시퀀스형
      : 문자열, 수치등을 관리하는 기본 자료형으로 문자열String(str), 튜플Tuple, 리스트List
      : 인덱스를 사용해서 저장된 문자를 하나 하나 추출 및 처리 가능
      : 배열 형식, 인덱싱(indexing), 슬라이싱(slicing), 연결과 반복, 자료확인(in)
    • Mappings 매핑형
      : Dictionary 딕셔너리
      :
      {key:value}의 형태로 비정형 데이터를 매핑할 때 유용하게 사용
    • Sets 세트 : {} 안에 저장된 자료를 집합연산을 통해 자료 추출할 때 사용
    • None

    • type() 함수 : 해당 변수의 자료형을 알려줌
    • 각 숫자와 문자를 변환 시키고 싶을 때, int, float, str 함수 사용
    • 정수의 나눗셈 : 부동 소수점 수를 반환
    • 실수형 → 정수형으로 변환 : 소수점 이하 내림(반올림x)
>>> a = 10.7
>>> b = 10.3
>>> a = int(a)
>>> b = int(b)
>>> print(a+b)
20

 

  • 출력 print(출력 내용 [, sep=구분자] [, end=끝문자])
    • 괄호 안에 출력 내용 입력
    • 스크립트 모드에서 값을 출력할 땐 반드시 print 명령어 사용
    • 여러개의 출력 결과를 공백이나 구분자Separator 사용하여 구별
이스케이프 문자 => 백슬래시 "\" 사용
\ [Enter] 다음 줄과 연속임을 표현 \\ 문자 "\" 자체
\n 개행(줄 바꿈) \v 수직 TAB
\t 수평 TAB 키 \r 캐리지 리턴
\f 폼 피드 \a 벨 소리
\e ESC 키 \b 백 스페이스
\000 널문자    
\' 단일 인용부호(') \" 이중 인용부호(")
print("A" , end="\t")
print("A" , end="\t") 
#A	A
print("A", "A", "A", sep=", ", end='.') #A, A, A.

#별을 출력하는 코드 
for y in range(3) : #3까지 반복한다.
    for x in range(y) :
        print('*', end=' ') # '* '문자출력 > 끝문자가 
    print() # 개행한다.
#* 
#* * 
#* * *

 

  • 사용자 입력 input
    • 사용자의 입력값을 받음
    • 문자열로 반환 → 숫자일 경우 변환 필수
hours  = input('Enter Hours: ')
rate = input('Enter Rate: ')

pay = float(hours) * float(rate)

print('Pay: ' + str(pay))

 

  • 10진수가 아닌 정수
    • 앞에 접두 붙여 진법 지정, 표시
    • 출력형식 : 십진수 형식으로 출력됨
진법 접두 사용 가능한 숫자
16진법(hexadecimal) 0x 0~9, a~f 0x10 > 16
8진법(octal) 0o 0~7 0o10 > 8
2진법(binary) 0b 0, 1 0b10 > 2

 

  • 불린형bool 정수 호환
    • False == 0
    • True == 1

 

  • 실수형
    • 4byte, 8byte 저장할 수 있는 타입
    • 지수부 + 가수부로 구성된 부동소수점 형식
      >>  0.0035 = 3.5*10**-3 = 3.5(가수부) 10**-3(지수부)
    • 이진법 실수의 표현형식 IEEE 754(가수E지수) : ex) 3.5e-3  > 0.0035 // str(1.0e4) > 10000.0
    • 4byte로 저장할때 1bit는 sign bit(양수 0, 음수 1) , 지수부 (8bit), 가수부(23bit)
    • .bit_length() : 이진수 크기를 알 수 있음

 

  • 복소수형
    • 실수부 + 허수부j
    • j 접미 == 복소수 나타냄
>>> x = 3-4j
>>> type(x), x.imag, x.real, x.conjugate()
(complex, -4.0, 3.0, (3+4j))

 

  • 숫자 표현식
+ 더하기
- 빼기
* 곱하기
/ 나누기
** 거듭제곱
// 몫 반환
% 나머지

 

  • 연산 순위
    • 괄호 > 거듭제곱 > 곱하기, 나눗셈, 나머지 > 덧셈, 뺄셈 > 왼쪽에서 오른쪽

 

Comments