Python

Python

[Python] 얕은복사, 깊은복사(shallow copy, deep copy)

a = [1,3,5]b = aprint(b)#[1,2,3]#잘 복사가 된듯a.append(7)print(b)#[1,3,5,7]#배열a에 추가했는데 왜 배열b에 추가가 된것이여? 이게 머선일이고? 우리가 가끔 코딩테스트를 연습하다보면 만나는 실수다.얕은복사를 했기 때문에 의도와 다른 저런 참사가 난다. 얕은복사를 할 경우 a,b의 두 변수는 같은 주소를 참조하고있기 때문이다.독립적으로 사용하기위한 복사를 하려면 깊은복사를 해줘야한다 import copya = [1,3,5]b = copy.deepcopy(a)a.append(7)print(b)#[1,3,5]#이젠 온전하게 b가 출력된다! 좀 귀찮지만 copy를 import해서 사용해야한다.이젠 변수 a,b 를 독립적으로 사용할 수있다. 하지만 위의 방법은 막..

Python

[Python] input 입력받는 수 많은 방법(map, split)

python으로 코딩문제들을 풀 때 input으로 입력을 받고 시작한다. string 타입으로 입력받기#입력 값:5n = input()#n = '5' int 타입으로 입력받기# 입력 값 : 5n = int(input())# n = 5  string 타입으로  띄어쓰기로 값이 구분되어있는값 여러개 받기#입력 값 = 5 7a, b = input().split()#a = '5', b = '7' int 타입으로  띄어쓰기로 값이 구분되어있는값 여러개 받기#입력 값 = 5 7a, b = map(int, input().split())#a = 5, b = 7 int 타입으로  띄어쓰기로 값이 구분되어있는값 리스트로 받기#입력 값:5 7 9n_list = list(map(int, input().split())) #: ..

Python

[Python] 파이썬 eval 함수 설명 및 예제

eval(expression) 문자열인 expression("1+2"와 같은 문자열로 이루어진 식)을 계산하는 함수 #eval()함수 예제 #ex1 otter1 = "1+2+4" result = eval(otter1) print(result) #7 #ex2 otter2 = "1