Skip to content

Commit 17f4e55

Browse files
committed
up
1 parent 19c088d commit 17f4e55

File tree

8 files changed

+223
-255
lines changed

8 files changed

+223
-255
lines changed
File renamed without changes.

intro.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,5 +47,5 @@
4747

4848
## 피드백 및 문의
4949

50-
이 책의 내용에서 오류를 발견하거나, 관련 질문이 있다면 언제든지 [GitHub 저장소](https://github.com/codingalzi/code-workout-python/issues)의 이슈(Issues) 탭을 이용해 주세요.
50+
이 책의 내용에서 오류를 발견하거나, 관련 질문이 있다면 언제든지 [GitHub 저장소의 Issues 탭](https://github.com/codingalzi/code-workout-python/issues) 이용해 주세요.
5151
여러분의 피드백은 더 좋은 내용을 만드는 데 큰 도움이 됩니다.
Lines changed: 139 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"cell_type": "markdown",
55
"metadata": {},
66
"source": [
7-
"# 논리 연산"
7+
"# if 조건문"
88
]
99
},
1010
{
@@ -474,17 +474,150 @@
474474
"cell_type": "markdown",
475475
"metadata": {},
476476
"source": [
477-
"## 논리식과 `if` 조건문"
477+
"(sec-values-if)=\n",
478+
"## 조건문"
478479
]
479480
},
480481
{
481482
"cell_type": "markdown",
482483
"metadata": {},
483484
"source": [
484-
"논리식은 `if` 조건문에서 다양한 형식으로 활용된다.\n",
485-
"여기서는 {numref}`%s절 <sec-values-if>`에서 소개한\n",
486-
"간단한 형식의 `if ... else ...` 이외에\n",
487-
"다른 형식의 조건문을 소개한다."
485+
"컴퓨터 프로그램은 값을 저장하고 조작하여 새로운 값을 계산하여 활용하는 방법을 묘사한다.\n",
486+
"이때 주어진 값에 따라 따라 다른 방법으로 일을 하도록 명령할 수 있다."
487+
]
488+
},
489+
{
490+
"cell_type": "markdown",
491+
"metadata": {},
492+
"source": [
493+
"**`if ...` 조건문**"
494+
]
495+
},
496+
{
497+
"cell_type": "markdown",
498+
"metadata": {},
499+
"source": [
500+
"예를 들어 아래 코드는 파이썬을 좋아하는 경우에만 '안녕!'과 '파이썬 좋아요.' 두 문자열이 출력되도록 한다."
501+
]
502+
},
503+
{
504+
"cell_type": "code",
505+
"execution_count": null,
506+
"metadata": {},
507+
"outputs": [
508+
{
509+
"name": "stdout",
510+
"output_type": "stream",
511+
"text": [
512+
"안녕!\n",
513+
"파이썬 좋아요.\n"
514+
]
515+
}
516+
],
517+
"source": [
518+
"love_python = True\n",
519+
"\n",
520+
"if love_python:\n",
521+
" print(\"안녕!\")\n",
522+
" print(\"파이썬 좋아요.\")"
523+
]
524+
},
525+
{
526+
"cell_type": "markdown",
527+
"metadata": {},
528+
"source": [
529+
"`if love_python`은 `love_python`이 참인지 여부를 확인하도록 하는 명령문이다.\n",
530+
"그런데 1번 줄에서 `love_python = True`라고 작성되어 있기에 \n",
531+
"`love_python`이 참으로 확인되고, \n",
532+
"따라서 들여쓰기된 `print(\"안녕!\")`와 `print('파이썬 좋아요.')` 두 명령문이 차례대로 실행된다."
533+
]
534+
},
535+
{
536+
"cell_type": "markdown",
537+
"metadata": {},
538+
"source": [
539+
":::{admonition} 들여쓰기와 코드 블록\n",
540+
":class: note\n",
541+
"\n",
542+
"`if love_python:`에 콜론 기호 `:` 사용되고 이어지는 두 개의 명령문은 들여쓰기 이후에 작성되었음에 주의한다.\n",
543+
"파이썬은 들여쓰기를 이용하여 명령문들로 구성된 코드 블록을 지정한다.\n",
544+
"\n",
545+
"이렇게 동일한 정도의 들여쓰기 이후에 작성된 명령문으로 구성된 코드 블록은 특정 조건 하에서만 실행된다.\n",
546+
"예를 들어 위 코드에서는 `love_python`이 참이기에 들여쓰기된 코드 블록이 실행되었다.\n",
547+
"\n",
548+
"들여쓰기는 일반적으로 <kbd>Tab</kbd> 키를 이용하며, 일반적으로 <kbd>Space</kbd> 키를 \n",
549+
"4번 또는 2번 타입핑한 결과로 처리된다.\n",
550+
"사용하는 편집기에 따라 들여쓰기 정도를 지정하는 옵션이 제공된다.\n",
551+
":::"
552+
]
553+
},
554+
{
555+
"cell_type": "markdown",
556+
"metadata": {},
557+
"source": [
558+
"반면에 아래 코드를 실행하면 아무 것도 출력되지 않는다.\n",
559+
"이유는 1번 줄에서 `love_python`이 거짓으로 확인되어 들여쓰기된 코드 블록이 실행되지 않기 때문이다."
560+
]
561+
},
562+
{
563+
"cell_type": "code",
564+
"execution_count": null,
565+
"metadata": {},
566+
"outputs": [],
567+
"source": [
568+
"love_python = False\n",
569+
"\n",
570+
"if love_python:\n",
571+
" print(\"안녕!\")\n",
572+
" print(\"파이썬 좋아요.\")"
573+
]
574+
},
575+
{
576+
"cell_type": "markdown",
577+
"metadata": {},
578+
"source": [
579+
"**`if ... else ...` 조건문**"
580+
]
581+
},
582+
{
583+
"cell_type": "markdown",
584+
"metadata": {},
585+
"source": [
586+
"위 코드의 `if lov_python` 조건문에서 `love_python`이 거짓이어서 들여쓰기된 코드 블록이 실행되지 않았다.\n",
587+
"그런데 그런 경우, 즉 `if` 다음이 거짓으로 판정될 때 실행되는 다른 코드 블록을 `else` 키워드를 이용하여 지정할 수 있다.\n",
588+
"예를 들어 아래 코드는 파이썬을 좋아하지 않는 경우에 파이썬을 사랑해주면 행복진다는 문장을 출력한다."
589+
]
590+
},
591+
{
592+
"cell_type": "code",
593+
"execution_count": null,
594+
"metadata": {},
595+
"outputs": [
596+
{
597+
"name": "stdout",
598+
"output_type": "stream",
599+
"text": [
600+
"파이썬을 사랑해주세요!\n",
601+
"그러면 행복해집니다.\n"
602+
]
603+
}
604+
],
605+
"source": [
606+
"love_python = False\n",
607+
"\n",
608+
"if love_python:\n",
609+
" print(\"안녕!\")\n",
610+
" print(\"파이썬 좋아요.\")\n",
611+
"else:\n",
612+
" print(\"파이썬을 사랑해주세요!\")\n",
613+
" print(\"그러면 행복해집니다.\")"
614+
]
615+
},
616+
{
617+
"cell_type": "markdown",
618+
"metadata": {},
619+
"source": [
620+
"`else` 키워드 또한 콜론 기호 `:`로 끝나고 줄바꿈 후에 들여쓰기로 코드 블록을 지정함에 주의한다."
488621
]
489622
},
490623
{

myst.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,10 @@ project:
4444
- file: intro.md
4545
- file: programming.md
4646
- file: starting.ipynb
47-
47+
- file: values.ipynb
48+
- file: logical.ipynb
49+
- file: expressions_dataTypes.ipynb
50+
- file: inputs.ipynb
4851

4952
site:
5053
template: book-theme

practices/practice-starting.ipynb

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,24 +4,24 @@
44
"cell_type": "markdown",
55
"metadata": {},
66
"source": [
7-
"# 프로그래밍 맛보기"
7+
"# 변수 할당"
88
]
99
},
1010
{
1111
"cell_type": "markdown",
1212
"metadata": {},
1313
"source": [
14-
"## 연습문제"
14+
"**참고**\n",
15+
"\n",
16+
"먼저 [변수 할당](https://codingalzi.github.io/code-workout-python/starting/) 내용을 공부한 다음에 연습문제를\n",
17+
"풀어볼 것을 권장한다."
1518
]
1619
},
1720
{
1821
"cell_type": "markdown",
1922
"metadata": {},
2023
"source": [
21-
"**참고**\n",
22-
"\n",
23-
"먼저 [프로그래밍 맛보기](https://codingalzi.github.io/code-workout-python/starting/) 내용을 공부한 다음에 연습문제를\n",
24-
"풀어볼 것을 권장한다."
24+
"## 연습문제"
2525
]
2626
},
2727
{

0 commit comments

Comments
 (0)