파이썬 기초(1)

장현수·2023년 5월 8일
0

알고리즘

목록 보기
2/9

파이썬 코테강의를 듣고 특별히 기억할만한 내용, 처음 배운 내용 위주로 작성하는 복습글이다. 레고레고~!

1. 할당 연산자

할당 연산자 =은 정확히 무엇일까?
변수를 할당할 때 사용하는 할당연산자는 단순히 변수에 이름을 붙이는 것이 아니다.
변수가 할당된 객체의 주솟값을 가리킨다.

age = 3

변수 age에 3이라는 값을 할당했다.

age를 호출하면 3이라는 값이 출력되지만, 변수 age 자체가 3인 것은 아니다.

id()로 age의 주솟값을 출력한다.

age를 호출하면, age가 할당된 메모리의 주솟값을 가리켜 그 값을 출력하는 것이다.

파이썬튜터에서 코드를 작성해보면 이해가 쉽다.

변수를 할당하는 이유

변수를 할당하지 않고 객체에 접근하게 되면, 메모리 주솟값에 할당된 객체가 바뀌게 된다.
해당 메모리 주솟값에 중요한 데이터나 파일이 있을 경우 손상되는 문제가 발생한다.
따라서 개발자가 메모리 주소에 직접 접근하지 못하도록 하기 위해 변수를 사용하는 것이다.

두 변수 값 바꾸기(swap)

2. 파이썬 입출력

파이썬에서 입력과 출력은 각각 input(), print()로 수행한다.

num = input('입력: ')
print('이건 언제 실행될까?')
print(num, type(num))

위의 코드를 실행하면 다음과 같다.

사용자 입력을 기다린다

  • 입출력 작업은 프로그램이 아닌 운영체제에서 수행되기 때문에, input()함수를 만나면 그 줄에서 멈춘다.

코드를 순서대로 실행한다

  • 파이썬은 소스코드를 한줄 한줄 읽어가며 명령을 처리하는 인터프리터 언어이기 때문에 한줄 씩 명령을 실행한다.

input()결과값은 항상 문자열(string)이다

  • input()함수에는 어떤 자료형을 입력하든지 항상 문자열을 출력한다.

<결과>

3. 스택 큐

파이썬에서 스택과 큐는 모두 리스트로 구현한다.

스택 자료구조 Stack

  • 후입선출 자료구조
  • 뒤로가기 버튼 기능이 후입선출 방식으로 구현한 것.
  • 신규 데이터의 삽입 : append()
  • 데이터의 추출 : pop()

큐 자료구조 Queue

  • 선입선출 자료구조
  • 식당의 대기줄 같은,, 큐는 앞쪽부터 자료가 빠져나가고 삽입은 리스트 뒤로 이어짐
  • 신규 데이터의 삽입 : append()
  • 데이터의 추출 : pop(0) - 0번째 요소 추출

4. 명시적 형 변환

파이썬의 내장 함수를 사용하여 의도적으로 타입을 변환하는 것

실수형(float) ⇒ 정수형(int)

  • 실수에서 정수로 변환하는 경우는 사실상 형 변환이라기보다는 '버림'연산을 하는 것

bool()

  • 불린형이 아닌 자료형을 불린형으로 변환할 때 사용하는 함수
  • True, False 외에 다른 자료형이 불린형으로 평가되는것이다.
  • 실제 참 거짓인지가 아닌 불린형으로 평가되는것이다. 주로 값이 비어있는 형태가 Flase로 평가된다.

5. 연산자

몫 연산자//

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

제곱 연산자 **

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

복합 연산자

복합 연산자는 할당의 개념으로 이해해야 한다.

a += b  # a = a + b
b -= 1  # b = b - 1

위와 같은 연산에서
a라는 변수에 a + b의 값을 재할당하는 것이다.
즉 복합연산자 오른쪽에 있는 값을 왼쪽의 변수에 할당하는 것이다.

a -= b + 3  # a = a - (b + 3)

위와 같이 복합 연산자 오른쪽에 연산식이 온다면 오른쪽 연산식이 먼저 계산되고 복합 연산이 일어난다.

6. 논리연산자



and 연산자는 왼쪽과 오른쪽 모두를 검증한다.
위의 경우 정수 3과 4는 모두 True로 평가되는 값이다.
따라서 마지막으로 검증한 값을 출력한다.


이 경우엔 먼저 검증되는 0의 경우 False로 평가되는 값이다.
양쪽이 모두 True를 만족해야 True가 되는 and연산자이기 때문에,
오른쪽 값은 검증할 것도 없이 False값인 0을 출력한다.
이것을 단축평가라고 한다.

단축평가
표현식을 평가하는 도중에 결과가 확정된 경우 나머지 평가 과정을 생략하는 것


순서를 바꿔서 한번 더 검증해보기..

profile
개같이 발전하자 개발

0개의 댓글