[Python] 03.변수 선언 및 할당

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

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

 

[Python] 01.Python 준비

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

myinfrabox.tistory.com

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

 

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

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

myinfrabox.tistory.com

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

 

[Python] 04.문자열 처리

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

myinfrabox.tistory.com

[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

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

 

[Python] 06.반복문

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

myinfrabox.tistory.com

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

 

[Python] 07.튜플(Tuple)

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

myinfrabox.tistory.com

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

 

[Python] 08.리스트(List)

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

myinfrabox.tistory.com

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

 

[Python] 09.사전(Dictionary)

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

myinfrabox.tistory.com

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

 

[Pytho] 10.set

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

myinfrabox.tistory.com

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

 

[Python] 11.함수(Function)

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

myinfrabox.tistory.com

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

 

[Python] 12.클래스(Class)

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

myinfrabox.tistory.com

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

 

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

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

myinfrabox.tistory.com

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

 

[Python] 14.파일처리

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

myinfrabox.tistory.com

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

 

[Python] 15.MySQL Database

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

myinfrabox.tistory.com

 

'Develop > Python' 카테고리의 다른 글

[Python] 05.조건문  (0) 2020.12.29
[Python] 04.문자열 처리  (0) 2020.12.29
[Python] 02.Python 스크립트 작성 방법  (0) 2020.12.29
[Python] 01.Python 준비  (0) 2020.12.28
[Python] Intro : Very Quick Python  (0) 2020.12.28

Designed by JB FACTORY