파이썬 변수 교환 - paisseon byeonsu gyohwan

이 파이썬 글은 프로그래밍을 처음하시는 분들도 알아듣기 쉽게 쓰려고 노력하고 있습니다

이해안가는 부분이 있다면 피드백 주시면 감사하겠습니다!!!

파이썬에서는 여러 변수에 값을 동시에 대입할 수 있습니다

이를 이용해서 swap 연산(두 변수의 값을 교환하는 연산)도 쉽게 가능합니다

x, y = 35

print(x) # 3

print(y) # 5

cs

위와 깉아 두 값을 두 변수에 한 번에 넣을 수 있습니다

x에는 3이 들어가게 되고 y에는 5가 대입됩니다

x, y, z = 359

print(x) # 3

print(y) # 5

print(y) # 9

cs

물론 위와 같이 한 번에 3개의 값을 대입할 수도 있습니다

그러면 이를 응용해봅시다!!

< SWAP 연산>

C언어 같은 경우 두 값을 바꾸는 swap 연산을 위해서는 temp 변수를 필요로 합니다

int a = 10;

int b = 20;

int temp;

temp = a;

= b;

= temp;

printf("a : %d, b : %d\n", a,b);    // a: 20, b : 10

cs

위와 같이 임시 변수를 이용해서 swap 해야 합니다

하지만 파이썬은!!

= 10

= 20

a, b = b, a

print(a) # 20

print(b) # 10

cs

위와 같이 코드 한줄이면 바로 swap 연산이 가능합니다

다른 언어를 사용하시다 파이썬을 사용하신다면 위와 같이 코드를 짜야겠죠??

파이썬스럽게요~~

<여러 값 동시에 대입>

또한 여러 값을 한번에 대입할 수 있습니다

위와 같이 하면 a,b,c라는 변수에 10이라는 값이 들어가게 됩니다

<기존 변수에 값 대입>

파이썬에서는 기존 변수에 다른 값을 넣어서 사용할 수 있습니다

그때 그때 타입을 정하기 때문입니다

= 2

print(x) # 2

= "two"

print(x) # two

cs

1번 줄에서 x에 2라는 int 값을 넣었고 출력하면 2라는 값이 잘 나옵니다

하지만 밑에 3번 줄에서 "two"라는 string을 다시 대입할 수 있습니다

보통 타입을 정하는 언어들이라면 에러가 발생하지만 파이썬은 가능합니다

그래서 4번째 줄에서 print를 통해 two라는 값을 출력할 수 있습니다

<확장치환문 사용가능>

c나 자바에서도 사용하는 확장치환문!!

간단히 말하면 이런겁니다. += -= *= /=

연산자를 줄여서 쓸 수 있는 문법이 파이썬에서도 제공됩니다

= 10

= 20

= a + b

print(a)

cs

위와 같이 a값에 b를 더해서 다시 a에 대입하는 연산을 하려고 합니다

그러면 일반 수학처럼 위와같이 쓰시면 됩니다. 그러면 a에는 30이라는 값이 담기게됩니다

이를 다음과 같이 줄여서 쓸수 있습니다

= 10

= 20

+= b

print(a)

cs

이렇게 말이죠!! 반복되는 부분을 줄인다고 생각하시면 됩니다

= 10

= 20

c= 123

+= b * c

print(a)

cs

그러면 위와 같이 쓰면 a에 어떤 값이 출력될까요???

위 식은 a = a + b * c를 줄인 것이라고 볼 수 있습니다

그러므로 10 + 20 * 123을 한 값이 담기게 됩니다

다른 연산자도 마찬가지 방법으로 줄여쓸 수 있습니다!!

궁금하신점은 꼭 댓글을 통해 마음껏 물어봐주세요~~


자바를 기본적으로 할줄 알고 Python을 알고리즘 풀이용으로 공부하고 있기 때문에 Python만의 문법을 익히고 있는 중이다.

파이썬에서 변수를 선언할때 자바스크립트와 같이 Type을 정해줄 필요가 없다. 값에 따라 Type이 정해진다.

변수명 규칙은 다른 언어들과 같다고 보면된다.

아래 예제를 통해 변수 선언방식과 값 교환 방법 그리고 출력방식에 대해 알아보자

'''

변수명 규칙

 1) 영문과 숫자, _ 로 이루어진다.

 2) 대소문자를 구분한다.

 3) 문자나, _ 로 시작한다

 4) 특수문자를 이용하면 안된다.(&, %등)

 5) 키워드를 사용하면 안된다.(if, for등)

'''

# 변수명은 대소문자를 구분한다.

# print 함수에서 , 로 구분하면 출력때 자동으로 한칸 띄어진다.

a=1

A=2

print(a, A)

# 한꺼번에 변수 선언과 동시에 값을 넣을 수 있다.

a, b, c = 321

print(a, b, c)

# 값 교환하는 방법

a, b = b, a

print(a, b)

# 변수 타입 확인 방법

= 10

= 5.5

# 문자열은 홑따옴표나 쌍따옴표나 상관없다.

= 'hello'

print(type(a), type(b), type(c))

# 문자열 + 변수 출력방법

print("number : ", a)

# 값 변수 사이 지정 방법

print(a, b, c, sep='\n')

# print 함수는 찍고나면 자동으로 줄바꿈이 된다. 변경 하려면 end 이용

print(a, end=' ')

print(b)

cs

파이썬 변수 교환 - paisseon byeonsu gyohwan

참고강의 : 파이썬 알고리즘 문제풀이,  지식공유자 김태원