파이썬 변수 선언만 - paisseon byeonsu seon-eonman

파이썬 변수 선언만 - paisseon byeonsu seon-eonman

오늘은 파이썬의 변수에 대해 알아보려고 합니다.

변수(Variable)란 변하는 수의 약어로 파이썬 프로그래밍에서 다룰 땐 var이라 사용됩니다.

프로그래밍을 할 땐 직접 연산을 하기도 하지만 변수에 특정 수를 담아 연산하기도 합니다.

코드 10~20줄 정도의 코딩이라면 직접 연산이 직관적으로 보이기 때문에 효율적이지만, 코드가 1000줄 이상에 직접 연산을 하게 된다면 추후 수정할 때 1000줄 이상의 코드를 다 읽어보며 수정을 해야 되는 경우도 발생하게 됩니다.

이러한 시간적 낭비를 줄이기 위해 우리는 변수를 활용해야 합니다.

실습을 통해 변수에 대한 개념을 확실히 알아봅시다!

오늘 다룰 개발환경(IDE)은 주피터 노트북입니다.

주피터 노트북이 설치가 안되어 있는 분들은 아래 링크를 통해 설치 및 실행 부탁드립니다.

주피터 노트북 설치 및 실행하기

파이썬 코드 에디터 - 개발툴(IDE) 추천 및 다운로드 방법

안녕하세요! 오늘은 파이썬 코드 편집 에디터(IDE)에 대해 알아보려고 합니다. ㅎ IDE란 Integrated Development Environment의 약어로 쉽게 말해 통합개발환경이라 생각하시면 되겠습니다. 다른 말로는 개발 툴..

scikitlearn.tistory.com

파이썬 변수 선언만 - paisseon byeonsu seon-eonman

코드창을 통해 직접 연산부터 해보겠습니다.

파이썬 변수 선언만 - paisseon byeonsu seon-eonman

예시로 "1+2", "1*2", "1/2", "1-2"를 직접연산하고 print함수를 이용해 출력한 결과입니다.

각 순서에 맞게 3, 2, 0.5, -1이 출력된 걸 볼 수 있습니다.

만약 연산값을 바꾸고자 1을 5로 바꿀려면 어떻게 해야될까요?

직접연산을 했다면 하나씩 수기로 4개를 다 수정해줘야 할 것입니다.

예시는 4줄이지만 수천줄, 수만줄의 코드를 바꿔야 한다면, 엄청난 시간낭비와 생산성 저하의 원인이 될거에요. ㅠ

만약 이때 변수를 활용 한다면 어떻게 될까요?

변수를 활용하여 다시 한번 해보겠습니다.

먼저 코드창을 통해 변수를 정의해 보겠습니다.

직접연산에 사용하였던 1을 var1에 넣고, 2는 var2에 넣어 변수를 정의한 후 print함수를 이용해 출력해보았습니다.

파이썬 변수 선언만 - paisseon byeonsu seon-eonman

1과 2가 정상적으로 출력되는 것을 확인할 수 있습니다.

다음은 정의된 변수들을 가지고 연산을 해보겠습니다.

파이썬 변수 선언만 - paisseon byeonsu seon-eonman

연산된 결과를 보니 직접연산과 동일하게 출력된 것을 확인할 수 있습니다.

이번에는 변수 하나만 수정하여 연산된 결과 값을 바꿔 보겠습니다.

var1 변수의 값을 5로 변경하고 print함수를 이용하여 출력하였더니...

파이썬 변수 선언만 - paisseon byeonsu seon-eonman

이러한 결과가 출력되었습니다.

변수를 활용하지 않았더라면 4번의 수작업이 들어갈 것을 변수 하나만의 수정으로 해결된 것을 볼 수 있습니다.

변수 하나만으로 시간이 엄청 단축 된 것을 느끼시나요? ㅎ

코딩은 실전으로 들어가게 된다면 1000줄, 2000줄은 기본이기 때문에 변수 활용이 정말 중요합니다.

필자는 코딩 공부할때 변수의 중요성을 크게 느끼지 못한터라 이를 무시하고, 직접연산만을 고집하다 엄청 고생한 기억이 있기 때문에 독자분들에겐 다소 시간이 걸리더라도 입문과정부터 변수를 활용할 것을 권해드리고 싶어요.

직접연산만 하다보면 거기에 습관이 되어 본인도 모르게 직접연산만 하게 된답니다. ㅠ

오늘의 변수 포스팅 여기까지 마치겠습니다.

감사합니다.

1. 변수 할당

파이선에서변수할당은다른스크립트언어(php, shell script)처럼특정스트링을입력값을할당합니다. 좌측은변수명, 우측은값을입력합니다. 또한변수명은숫자로시작할없으며대쉬, 특수문자로 시작할없습니다. 언더바(_)변수명시작으로지정할있지만가독성상특수한경우를제외하고는권하지는않습니다.

2. 사용방법

ex) 변수명 =

c java처럼변수에변수타입을지정하지않습니다. 변수에값을대입하면알아서스트링형, 숫자형을대입합니다. 대부분의스크립트언어는위와같은방식을취하고있습니다.

▶︎ 기본

a = 1
b = '1'
c = 'abc'

▶︎ 순서대로할당.

a, b = ('c', 'd')
a에 'c', b에 'd'가 할당

(a, b) = 'c', 'd'
나중에 설명하지만 위의 속성들을 튜플이라고 하는데 이 튜플들은 괄호를 생략해도 할당이 된다.

[a,b] = ['c', 'd']
위와 같음.

a = b = 'python'
여러변수에 한번에 값을 할당할 수 있다.

▶︎ 튜플 패킹 및 튜플 언패킹

변수를 할당하는 방법에 따라 다음과 같이 두가지 방법으로 나뉩니다.

튜플 패킹(Tuple Packing) 언패킹(Tuple Unpacking (패킹))

튜플패킹 : 하나의변수에여러값을모두저장.

코드 :
x = 10,20,30
print(x)

결과 : 결과가 ()로 묶여 있음. 즉 하나의 값임.
(10, 20, 30)

• 튜플언패킹 : 각각의변수에하나의값들만대입.

코드 :
a,b,c = 10,20,30
print(a,b,c)

결과 : 결과가 각각의 변수에 저장되어 각각 출력됨.
10 20 30

3. 변수캐스팅

대표적인캐스팅은다음과같은 것들이있습니다. 외에많은캐스팅종류가있습니다.

str(1) : 스트링으로 캐스팅

float(1) : 실수로 캐스팅

int(1.0) : 정수로 캐스팅

사용자입력을받는값은무조건스트링값으로넘어오게됩니다. 숫자로처리를해야 반드시캐스팅이필요합니다.

user_input = input("숫자 입력")

num = int(user_input) -> int형으로 변환.

print(num*num)

캐스팅을포함하여한번에처리를원할다음과같이합니다.

한방 처리 : user_input = int(input("숫자 입력"))

4. 수정가능여부

 문자열을변수에할당할경우자동으로문자하나하나마다인덱싱이됩니다. 하지만인덱싱이문자를

수정하는건불가능합니다.

코드 :
# 한번 할당된 위의 변수 a는 불변입니다. 인덱싱해서 수정 시도시 에러가 발생합니다.
a=“hello world”

# 인덱싱된 캐릭터를 출력
print(a[0])

# 변경 시도
# 에러발생.
a[0]="b"

print(a[0])

출력 :
h
TypeError: 'str' object does not support item assignment
위의 에러가 발생하면서 수정할 수 없다고 나오게 됩니다.

 반대로리스트의값들은수정이가능합니다. 변수에하나의값이아닌여러값으로변수초기화를시키기때문에가능합니다.

리스트에관한내용은앞으로배우게것입니다.

코드 :
heights = [1.4, 1.3, 1.5 ,2 ,1.4, 1.5, 1]

# 인덱스 0번의 숫자 1.4 출력. 
print(heights[0])

# 인덱스 0번의 값 100으로 변경. 그리고 출력.
heights[0] = 100
print(heights[0])

출력 :
1.4
100

5. 변수 교환

변수에할당된값을간단히변경하는방법이있습니다.

코드 :
a=5
b=4
print(a,b)

결과 : 값 교환
a, b=b,a
print(a,b)

■ 파이선 다른 회차

[Python] Intro : Very Quick Python : https://myinfrabox.tistory.com/169

[Python] Intro : Very Quick Python

개인적으로 공부하면서 정리해 놓은 파이선 자료를 업로드합니다. 여기의 내용은 문법에 대한 자세한 설명은 생략합니다. 개발 경험이 있는 분들에게 굳이 문법에 대한 자세한 설명은 필요없으

myinfrabox.tistory.com

파이썬 변수 선언만 - paisseon byeonsu seon-eonman

[Python] 01.Python 준비 : https://myinfrabox.tistory.com/170

[Python] 01.Python 준비

파이선을 처음 접할때 콘솔로 프로그래밍하기 보다는 편리한 IDE툴을 이용해서 접해보기를 권합니다. 보통 프로그래밍을 처음 배울때 날(raw)코딩으로 처음 접하기를 권하고 저또한 마찬가지이

myinfrabox.tistory.com

파이썬 변수 선언만 - paisseon byeonsu seon-eonman

[Python] 02.Python 스크립트 작성 방법 : https://myinfrabox.tistory.com/171

[Python] 02.Python 스크립트 작성 방법

리눅스, 유닉스에서 파이선을 실행시 맨위에 스크립트 종류를 선언합니다. 물론 선언하지 않고도 수행은 가능합니다. 그러나 리눅스, 유닉스에서 실행되는 대부분의 스크립트는 맨위에 특정 스

myinfrabox.tistory.com

파이썬 변수 선언만 - paisseon byeonsu seon-eonman

[Python] 04.문자열 처리 : https://myinfrabox.tistory.com/173

[Python] 04.문자열 처리

■ 문자열 인덱스 스트링으로 값을 받을때는 자동으로 인덱스 처리가 됩니다. 스트링 인덱스는 0부터 시작되며 끝에서 읽어올 시 -1부터 시작합니다. ▶︎ 사용방법 변수명[1] : 특정 인덱스에 값

myinfrabox.tistory.com

파이썬 변수 선언만 - paisseon byeonsu seon-eonman

[Python] 05.조건문 : https://myinfrabox.tistory.com/174

[Python] 05.조건문

■ 조건문이 참 혹은 거짓일경우. 조건문의 True, False에 따라 그에 맞는 분기를 실행합니다. ▶︎ 사용방법 if 조건문: ▶︎ 예제 코드 코드 : num_a = 2 if num_a > 0: print("num_a가 0보다 큽니다") else: pr..

myinfrabox.tistory.com

파이썬 변수 선언만 - paisseon byeonsu seon-eonman

[Python] 06.반복문 : https://myinfrabox.tistory.com/175

[Python] 06.반복문

■ for문 시퀀스의 모든 요소가 처음부터 마지막 수행될때까지 계속 반복힙ㄴ;디/ ▶︎ 사용방법 for <루프변수> in <튜플, 리스트등의 시퀀스>: ▶︎ 예제 코드 • 예제 1 : 시퀀스의 부분을 순서대

myinfrabox.tistory.com

파이썬 변수 선언만 - paisseon byeonsu seon-eonman

[Python] 07.튜플(Tuple) : https://myinfrabox.tistory.com/176

[Python] 07.튜플(Tuple)

■ 튜플 뒤에서 배울 리스트와 비슷합니다. 데이터를 열거하는 식으로 만듭니다. ()안에 데이터를 열거합니다. 튜플의 특징은 tuple = (1,)처럼 단지 1개의 요소만을 가질 때는 요소 뒤에 콤마(,)를

myinfrabox.tistory.com

파이썬 변수 선언만 - paisseon byeonsu seon-eonman

[Python] 08.리스트(List) : https://myinfrabox.tistory.com/177

[Python] 08.리스트(List)

■ 리스트 선언 리스트를 선언하는 방법입니다. ▶︎ 사용방법 기본적으로 []를 사용해서 선언합니다. ["리스트요소","리스트요소","리스트요소","리스트요소"] ▶︎ 예제 코드 strlist = ["TV","냉장

myinfrabox.tistory.com

파이썬 변수 선언만 - paisseon byeonsu seon-eonman

[Python] 09.사전(Dictionary) : https://myinfrabox.tistory.com/178

[Python] 09.사전(Dictionary)

■ 사전 선언 방법 - 1 컬렉션중 사전을 만드는 방법입니다. 사전은 키:값 방식의 선언 방법입니다. {}(중괄호)문으로 시작합니다. 그리고 key:value방식으로 항목을 만듭니다. ▶︎ 사용방법 사전명

myinfrabox.tistory.com

파이썬 변수 선언만 - paisseon byeonsu seon-eonman

[Pytho] 10.set : https://myinfrabox.tistory.com/179

[Pytho] 10.set

□ set이란? 키만 활용하는 데이터 구조로 이해합니다. 수학에서 집합과 동일한 개념입니다. ■ set 선언 방법 set을 선언하는 방법입니다. ▶︎ 사용방법 set변수 = {항목1, 항목2, ....} ▶︎ 예제 코

myinfrabox.tistory.com

파이썬 변수 선언만 - paisseon byeonsu seon-eonman

[Python] 11.함수(Function) : https://myinfrabox.tistory.com/180

[Python] 11.함수(Function)

□ 사전 습득 지식 : 독 스트링(주석 묶기) 함수에는 보통 함수 명세서라 부르는 주석이 있습니다. 이곳에는 함수의 사용방법, 파라미터등을 설명합니다. 의무는 아니지만 팀으로 개발하는 소스

myinfrabox.tistory.com

파이썬 변수 선언만 - paisseon byeonsu seon-eonman

[Python] 12.클래스(Class) : https://myinfrabox.tistory.com/181

[Python] 12.클래스(Class)

□ 클래스 파이선을 이용하여 클래스를 만들 수 있습니다. 다른 객체지향 언어와 거의 비슷합니다. 클래스를 만들고 객체로 선언하여 사용합니다. 그리고 객체의 메소드를 호출해서 사용합니다

myinfrabox.tistory.com

파이썬 변수 선언만 - paisseon byeonsu seon-eonman

[Python] 13.외부 클래스 사용하기 : https://myinfrabox.tistory.com/182

[Python] 13.외부 클래스 사용하기

□ 외부 클래스 사용하기 파이선에도 여러가지 유용한 클래스를 제공합니다. 수학, 스트링, 랜덤수, 시간등등 여러가지 외부에서 임포트해서 유용하게 사용할 수 있는 여러 클래스를 제공합니

myinfrabox.tistory.com

파이썬 변수 선언만 - paisseon byeonsu seon-eonman

[Python] 14.파일처리 : https://myinfrabox.tistory.com/183

[Python] 14.파일처리

□ 파일처리 파일을 생성, 수정, 읽기를 하는 방법을 알아봅니다. ■ 파일 생성. 신규 파일을 생성합니다. 만약 기존 파일이 있을시 덮어씁니다. 파일을 생성하고 그 파일안에 내용을 작성할 수

myinfrabox.tistory.com

파이썬 변수 선언만 - paisseon byeonsu seon-eonman

[Python] 15.MySQL Database : https://myinfrabox.tistory.com/184

[Python] 15.MySQL Database

□ MySQL데이터베이스 사용방법 MySQL 데이터베이스에 대해 사용방법을 알아봅니다. DB생성, 테이블 생성-삭제, DML문법을 알아봅니다. ■ 데이터 베이스 사용을 위한 환경설정. 파이선에서 MySQL데이

myinfrabox.tistory.com

파이썬 변수 선언만 - paisseon byeonsu seon-eonman