본문 바로가기

ReactFileStructure/부트캠프 과정

Python_1_dataStruct 0709

변수, 상수, 계수

변수 variable : 변하는 수

상수 constant : 변하지 않는 수

계수 coefficient : 특별한 상수? 변수와 상관관계가 있는,

 

프로그래밍의 능력 중 하나, 변수와 상수의 활용을 잘 하는 사람

모든 프로램은 = 을 기준으로 왼쪽은 변수, 오른쪽은 데이터가 위치한다.

 

프로그램을 가상환경에서 실행시켜야 한다! 

Space : indent 구분

UTF-8 : 인코딩 방법 정의

CRLF : 운영체제의 개행 표

Python : 언어 종류

 3.10.11('.venv':venv) : 실행 환경 표시 ( 가상 환경 상에서 실행되는 것을 알 수 있다. )

 

프로젝트 폴더 안의 하나의 가상 환경, 해당 가상 환경의 버전에 맞춰 추천해준다. 

 

파이썬에서 문자는 쌍따옴표(")나 홀따옴표(') 로 감싸준다. ( 둘을 번갈아 가며 사용할 순 없다. )

둘 다 지원하는 이유는 텍스트 안에 쌍따옴표나 홀따옴표를 사용하고 싶을 경우 사용하지 않은 문자로 감싸주기 위

 

쌍따옴표로 감싸진 데이터는 문자로 처리된다.

 

가상환경 상에서의 실행 확인 (IDE 에서 실행해도 똑같음)

 

문자열의 정수와의 곱셈,

번역하는 과정에서 곱해지는 주체가 정해지는 듯, 우선순위가 존재?? 문자 * 숫자, 숫자 * 문자의 출력 형태가 동일함,

그 외 다른 연산은 불가능, 형 검사에 의해 그런 듯

 

변수명을 데이터를 추상해서 적어서 관리해야 한다.

user_name, scoer, address ... 

구체적으로 적어야 한다.

 

변수, 클래스, 함수 명을 스네이크형(언더바) 으로 표현하

 

파이썬은 인터프리터 언어로, 코드 한 줄 별로 실행하며 확인할 수 있다.

주피터 노트북을 통해 확인 가능

pip 명령어를 통해 설치, 정말 많이 사용하는 명령어!!

-m : 관리자 모드라고 생각

최신 버전으로 업그레이드 후 사용

 

가상 환경상에 설치하면 원본 파이썬에는 추가되지 않음,

원본 파이썬이 변경되면 가상 환경에는 어떤 변화가 있는지 확인해보자

 

메모리 주소 : 변수의 값에 대한 컴퓨터의 메모리에 저장된 위치 주소.

id 함수를 통해 메모리 주소를 확인할 수 있다.

 

신기한 점으로 x = 1, y = 1 의 변수 선언을 하고 두 변수의 메모리 주소를 비교했는데 그 둘의 주소가 같았다. 1001 로 변경 후 다른 메모리 주소가 나왔는데, 이렇게 된 이유가 뭘까?

숫자 1이 저장되는 메모리 공간이 정수 형태로 표현되는 메모리 단위보다 작은 실수값이여서 그런건가???

 

메모리 주소를 비교하기 위한 명령어로 is, is not 이 존재

데이터 값을 비교하기 위한 명령어 ==, != 

 

상수는 대문자 리터럴로 표현!! (난수 시드값?, 파이값 등등 AI 분야에서 상수로 쓰일게 또 뭐가 있을까?)

enum 을 통해 관련 있는 여러 개의 상수의 집합을 정의할 때 사용한다. (그룹에 대한 상수!)

 

RED : 상수명

빨강 : 데이터(값)

enum.auto() : 메모리 지정 함수?

메모리 주소 확

데이터 확인

코드 재사용을 위한 변경

 

 

is 명령어가 메모리 주소를 비교한다고 했는데 출력에 사용되는 True, False (bool) 명령어가 메모리 공간 상에 이미 위치하고 있는지?

True 라는 문자열이 아닌 bool 의 값 타입으로 존재

True 나 False 같은 bool 타입이 실행될 때부터  메모리 상에 위치하는지, 해당 개념이 필요해질 때 그 때 생성되어 메모리 상에 존재하는지.

두 개념 자체는 가까이 존재...

다시 정리하자면 해당 개념이 코드 내에서 필요해지기 전에도 메모리 상에서 존재하는지에 대한 질문

 

 

String 인덱싱

슬라이싱

2개의 콜론이 존재하는 경우

 

문자열 포매팅

~

 

 

Methods and Functions

위 둘의 차이를 구별할 수 있어야 하는데,

함수는 재사용이 가능하다는 장점이 있다. 같은 코드의 재작성 없이 다시 실행할 수 있다.

 

메서드는 오브젝트에 대해서 활용된다.  해당 메서드가 포함된 클래스 내부의 데이터에 대한 작업으로 제한된다. 

또한 객체지향 프로그래밍 언어의 개념이다.

 

 

Function

  •  It is called by its own name/independently.
  • As it is called independently it means the data is passed explicity or exteernally

 

Method

  • It is called by its object's name/referenced
  • As it is called dependently which means the data is passed implicity or internally