[사용 예]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 변수 
 
= 1
= "python"
= [123]
 
print(a)
print(b)
print(id(a)) # 변수가 저장된 메모리 주소
 
# 결과 
# 1
# python
# 1988591664 매번 다를 수 있음
 
cs


[리스트 복사하기]


잘못된 방법으로 복사

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# 리스트 복사하기
 
# 잘못된 방법
 
= [1,2,3]
= a
 
print(id(a))
print(id(b))
print(a is b)  # a와 b가 가리키는 객체는 동일한가?
 
# 결과
# 2112106637384
# 2112106637384
# True
 
a[1= 4
print(a)
print(b)
 
# 결과
# [1, 4, 3]
# [1, 4, 3]
cs

 a가 가리키는 대상과 b가 가리키는 대상이 동일하다는 것을 알수 있다. 

따라서, a만 바꾸려고 한 작업이 a와 b모두 바뀌는 상황이 발생


[:] 또는 copy모듈 이용해서 복사

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# [:] 이용
 
= [123]
= a[:]
a[1= 4
print(a)
print(b)
 
# 결과
# [1, 4, 3]
# [1, 2, 3]
 
# copy 모듈 이용
 
from copy import copy
= copy(a)
print(b is a )
 
# 결과
# False
 
cs


[변수를 만드는 여러가지 방법]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# 변수를 만드는 여러 가지 방법
 
a, b = ('python''life'# 튜플 변수 대입
print(a,b)
 
(a, b) = 'python''life' # 튜플 변수 대입
print(a,b)
 
[a,b] = ['python''life'# 리스트로 변수 대입
print(a,b)
 
 
# 결과
# python life
# python life
# python life
 
##############################################
 
# 변수 바꾸기
 
= 3
= 5
a, b = b, a
print(a)
print(b)
 
# 결과
# 5
# 3
 
cs

출처- wikidocs 점프 투 파이썬 (박응용)


+ Recent posts