Thief of Wealth
python Swap
개발/Python 2019. 3. 24. 02:29

swap을 하는 방법에는 여러가지가있다. 1. 변수를 지정해서 교환tmp = aa = ba = tmp 2. 변수없이 +/- 연산으로변 교환(요소가 숫자일때만 가능)a= a+bb = a-ba = a-b 3. pythonic하게 swapa,b = b,a

python 배열에서 열출력하기
개발/Python 2019. 3. 23. 12:12

가끔씩 python으로 알고리즘을 풀다보면 python으로 column만 출력하고 싶을 때가있다. row는 arr[:]로 되지만column은 arr[:][0]으로 되지 않는다. numpy를 설치해야 가능하다.. 그러면 출력못할까? 아니 for문을 쓰면된다. 이작업은 매우 귀찮으나 pythonic하게 표현하면 print( [row[0] for row in arr] ) 으로 꽤나 간단하게 구현할 수 있다.

python은 인수를 넘길때 call-by-reference일까?
개발/Python 2019. 3. 23. 00:08

https://code13.tistory.com/214를 참고하여 작성하였다. python은 엄밀히 말해서 인수종류에 따라서 call-by-reference인지 call-by-value인지 다르다. int, float같이 1개의 값만 가지는 변수를 인자로 던지면 call-by-value효과를 낸다. 위 값으로 reference한 효과를 주고 싶으면, class객체를 따로만들거나 list형으로 만들어서 인수로 전달하는 방법이 있다. 그러나 list같이 여러개의 값을 가지는 객체를 인자로 던지면 call-by-reference로 작동한다. 그래서 list같은 객체를 인수로 줬으면 본문에서 영향이 없도록 하기위해, list()로 깊은 복사효과를 줘서 해결할 수 있다.

python의 삼항연산자
개발/Python 2019. 3. 21. 23:27

프로그래밍을 하다 보면 양자택일을 하는 상황에 놓이는데, if else연산을 쓰기가 매우 귀찮을 때가 있다. C/C++에서는 a>b ? a:b 같은 삼항연산자를 지원하는데 python은 어떨까? python에서는 and/or 변형된if/else 방식이 있다. and/or 방법은 잘 쓰지 않으니 우리는 나머지만 알아보자. 코드는 이렇다c = a if ( n%2==0 ) else b #python의 삼항연산자. 조건식이 참이면 앞의 값을 리턴 거짓이면 else값 리턴 뭔가 이질적이다. ?연산이 좀더 나은것 같은데..

profile on loading

Loading...