본문 바로가기

분류 전체보기

(284)
블록기호 없음. 들여쓰기가 중요 파이썬에는 '{ }' 이런 블록 구분 기호가 없습니다. 단순한 발상이긴 한데, 이게 꽤나 코드 가독성을 높여줍니다. (지금까지 왜 이런 생각을 못했나 몰라... ^^) 비교해보겠습니다. //Java or C for (int i=0; i< 100; i++) { if (i%3 == 0) { sum += i } } # Python for i in range(101): if i%3 == 0 : sum += i 한눈에 봐도 간단해졌음을 알 수 있습니다. 파이썬에서는 들여쓰기를 가지고 블록을 구분합니다. 그래서, 들여쓰기 규칙을 지키는 것이 중요합니다. 스페이스 2개를 들여 쓰기로 정했다면, 이걸 계속 유지해야 합니다. 같은 들여쓰기를 한 줄에 대해서는 같은 블록으로 인정하고, 다시 공백 2개 더한 들여 쓰기는 하..
for 구문이 좀 이상한데? 파이썬 문법을 제대로 안 배우고, 그냥 C나 Java에서 했던 코딩 실력으로 대충 파이썬을 해보려는 분들이, 가장 처음 막히는 부분이 for 구문일 거라 생각합니다. C나 Java하고 목적은 같은데, 사용 방법이 꽤 다릅니다. 예제로 확인해보겠습니다. 1에서 100까지 더하는, for를 사용하는 전형적인 예제입니다. 파이썬으로는, sum=0 for i in range(101): sum += i print(sum) C나 Java에서는 이런 형태일 겁니다. sum = 0 for i=0 to 101{ sum += i } print(sum) 파이썬에서는 `for ~ in 튜플/리스트` 구문입니다. `in`을 사용하는 것이 처음에는 좀 어색하고 C/Java 방식이 더 편리한 것처럼 느낄 수 있으나, 조금만 더 사..
if~else 있고, switch 없다. 프로그래밍하면서 if 구문을 안 쓸 순 없죠. 파이썬에도 당연 if~else 가 있는데, C나 Java 하고 약간 다릅니다. 다른 점을 요약하면, 1) if ~ elif ~ else 이다. if ~ else if ~ else 가 아니고 2) switch ~ case 구문 없다. 1. if ~elif ~ else else if 가 아니고 elif 입니다. 여기서도 파이썬 언어 개발자들의 귀차니즘 철학이 들어 있는 듯합니다. else if 도 아니고 elseif도 아니고 elif 라니. ^^ if a > 10 : ... elif (a 0): ... else: ... 뭐 어렵지 않습니다. else if 가 아니고 elif 라는 것만 명심하면 2. switch ~ case 구문 없음 s..
변수 선언 없다. C나 Java에 익숙한 사람일수록 가장 당황스러운 것이..... 변수선언 없이 사용하는 것!! 이래도 되나? 하는 생각이 들고, 이러면 문제 있지 않을까? 하면서도... 익숙해지면 괜찮습니다. ^^ a = 2 b = 3.5 c = a + b print(c) C나 Java 였으면 앞에 이런 선언이 필요하죠. (C/Java 고수들은, 자꾸 이러고 싶어 집니다. ) int a; float b, c; 파이썬에서는 대입되는 값에 따라 변수형이 결정되고, 쭈욱 사용되다가 다시 다른 타입의 값이 대입되면 다시 변수 타입이 바뀝니다. 따라서, 파이썬이라고 해서 변수의 타입이 없는 건 아닙니다. bool, int, float, complex, str 등의 기본 타입이 있습니다. 처음 변수가 만들어질 때 타입이 선언되는 ..
main이 어디 있나? print("Hello") 이렇게 하면, 바로 Hello 가 출력됩니다. 파이썬에서는, main 필요 없습니다. 그냥 하고픈 명령을 쓰면 차례대로 그냥 실행됩니다. 즉, 위 코드가 들어 있는 hello.py라는 파일을, python hello.py 이렇게 커맨드 창에 입력하면 그냥 됩니다. Java나 C 프로그래밍에 익숙한 사람들이 파이썬 접하면서 가장 먼저 낯설게 느껴지는 것이 main 없이 코드가 진행되는 것일 겁니다. Java/C는 프로그램의 시작점이 main에서 시작되기에, 코드를 볼 때 일단 main부터 찾는 게 습관화되어 있습니다. 프로그램 시작점에 대해서 좀 더 알아둘 게 있습니다. 코드 파일 3개를 만들어서, 몇 가지 테스트를 해보겠습니다. #controller.py print("I'm C..
이 글목록에 대해 파이썬이 C나 Java와 다른 점만을 소개합니다. C 혹은 Java에 나름 고수라고 생각하시는 분들이 파이썬을 우습게 보고 대충 접근했다가 "이게 뭐지" 하는 부분만을 모아놨습니다. 역설적으로 얘기하면, 여기 나와 있는 부분만 잘 이해하면, C나 Java의 고수분들은 파이썬에 대해 단기간에 그 정수리를 파악할 수 있다는 얘기!!! Let's Go~
[부록]칼라브루어(ColorBrewer) 색상 모음 부록입니다. 설명없습니다. 설명은 여기 보세요~ 1. 순서가 있는 색상 (Sequential Schemes): 18종 1)Yellow-Green 2)Yellow-Green-Blue 3)Green-Blue 4)Blue-Green 5)Pupple-Blue-Green 6)Pupple-Blue 7)Blue-Pupple 8)Red-Pupple 9)Pupple-Red 10)Orange-Red 11)Yellow-Orange-Red 12)Yellow-Orange-Brown 13)Purples 14)Blues 15)Greens 16)Oranges 17)Reds 18)Greys 2. 음/양으로 분기하는 색상 (Diverging Schemes): 9종 1)Pupple-Orange 2)Brown - BlueGreen 3)Pu..
가독성 좋은 색깔 선택하기 색깔이 예쁩니다. 이런 색감의 색상을, 만들고 있는 자료에도 적용할 수 있을까요? 색깔이 들어간 자료를 만들다가,  "이거 색상이 너무 튀는데?" "너무 많은 색을 쓰면 가독성이 떨어진다고 하는데?" "흠...좀 예쁘게 만들고 싶은데, 영...."  이런 경험이 있고, 영 색상감이 없다고 느끼시는 분은, 굳이 엄청 고민하면서 이 색상 저 색상 맞추보지 말고, 이미 잘 만들어진 칼라 스케일을용하세요!! 훨씬 낫습니다. 더보기유명한 몇 개의 칼라 스케일이 있는데 여기서는 컬러브루어 칼라스케일을 사용합니다. 사이트는 여기.다른 유명한 칼라 스케일로는, 오카베 이토(Okabe Ito) 칼라 팔레트지지플롯2 칼라지역별 강수량을 색깔로 나타내고 싶다이런 류의 "순서가 있는" 데이터의 경우는, 색깔의 밝기 변화로 구..
[022]Triangle/ArrowTip Triangle triangle = Triangle() ArrowTip tip = ArrowTip()
[021]Polygon Polygon p=Polygon(UP+LEFT, ORIGIN, DOWN+LEFT, RIGHT) RegularPolygon p = RegularPolygon() RegularPolygon: start_angle left = RegularPolygon() right = RegularPolygon(start_angle=PI/2) RegularPolygon: n def regulat_test3(self): tracker = ValueTracker(3) rp = RegularPolygon(3, fill_opacity=1, fill_color=RED) num = DecimalNumber(3,num_decimal_places=0).next_to(rp,UP) def update_func(mob): n = int(tra..