필자가 고등학생이던 시절, 누구나 한 권씩 가지고 있는 유명한 수학 책이 있었는데 첫 단원이 '집합'이었습니다. 중학교 겨울방학때 미리 예습을 한답시고 공부를 하였는데 그 누가 그랬던가요. 작심삼일이라고... 두 주먹 불끈 쥐고 으쌰으쌰 도전했는데, 딱 집합까지였습니다. 스스로 다음 단원으로 진도를 나가는 게 참 쉽지가 않더군요. (후에 학교를 와 보니 다른 친구들도 모두 집합 부분만 새카맣게 연필 자국이...) 이번에 배워볼 자료구조는 세트(set, 집합)입니다. 세트는 중복을 허용하지 않으며 또한 데이터의 순서도 보장하지 않습니다. 수학에서 배우는 것과 동일하게 중괄호를 이용하여 선언할 수 있습니다. {value1, value2, ...} 중복을 허용하지 않으므로 같은 값은 여러 번 적어도 딱 한 번..
백주부님께서 어느 돈까스 식당을 운영하시는 분들께 컨설팅을 하는데, 20여개의 다양한 메뉴 대신 가장 인기 있는 대표 메뉴 3가지로 고정하라는 내용이 있었습니다. 만약 그로 인해 매출이 떨어진다면 본인이 책임지겠다는 각서와 함께 말이죠. 선택과 집중이 필요한 상황에서 과감하게 내린 결단이었는데, 이렇게 하면 아무래도 다양한 메뉴를 준비하는 것보다는 많은 부분에서 빨라지겠죠? 리스트와 비슷하게 생겼지만 조금 다른 튜플(tuple)이 있습니다. 리스트의 '읽기 전용 버전' 정도로 이해하시면 좋겠네요. 튜플은 처음 정의할 때를 제외하고는 데이터 변경이나 추가, 삭제 등이 불가합니다. 대신 리스트보다는 속도가 빨라요. 튜플은 소괄호를 이용하여 정의합니다. (value1, value2, ...) 돈까스 식당 고정..
놀이공원이나 아울렛과 같이 사람이 많이 방문하는 곳은 주차장도 굉장히 크고 주차 기둥마다 B-1, C-32 와 비슷한 형태의 번호가 적혀 있습니다. 너무 넓어서 차를 어디다가 뒀는지 헷갈릴 수 있기 때문이죠. 특히 차량 리모컨이 없던 시절에는 차를 찾아 넓은 주차장을 헤매는 경우도 종종 있었지만 현재는 대부분 리모컨 버튼을 누르면 쉽게 찾을 수 있지요. 그런데 만약 리모컨 하나로 2대 이상의 서로 다른 차의 문을 열 수 있다면 어떨까요? 어떤 사람이 리모컨 버튼을 눌렀는데 근처에 있던 5대의 차가 모두 문이 열려버린다면... 이런 일이 있어서는 안되겠죠? 다행히 리모컨은 자동차 열쇠(key) 와 같은 역할을 하며 딱 1대의 차만 열 수 있도록 되어 있습니다. 이번에 공부할 자료구조인 사전(Dictiona..
10명의 친구들이 각각 차를 몰고 서울에서 부산까지 이동한다고 할 때, 1번부터 10번까지 차 10대가 나란히 붙어서 갈 수 있을까요? 아마 처음에는 그럴지 몰라도 이내 순서가 달라지고 다른 차들이랑 뒤섞이게 될 겁니다. 도중에 누구는 화장실을 가야할 수도 있고 휴게소에 들릴 수도 있고 막히는 구간에서는 고속도로가 아닌 국도를 이용하거나 실수로 길을 잘못 들르는 경우도 생길 수 있겠지요. 그런데 만약 기차라면 어떨까요? 서로 다른 열차 칸들이 모두 붙어있으므로 나란히 같은 모습으로 서울에서 부산까지 이동하게 될 겁니다. 출발도 똑같이, 도착도 똑같이 하겠지요. 순서도 그대로 유지가 될 겁니다. 변수를 공부할 때 앞에서는 나이, 이름, 취미 등 서로 다른 의미를 지니는 값들을 사용했는데, 만약 관련이 있는..
지금까지 배운 내용을 복습하기 위한 퀴즈를 드리겠습니다. 직접 한 번 풀어보시고 나서 정답을 확인해주세요. Quiz) 사이트 별로 비밀번호를 만들어주는 프로그램을 작성하시오. 예) http://naver.com 규칙1 : http:// 부분은 제외 → naver.com 규칙2 : 처음 만나는 점(.) 이후 부분은 제외 → naver 규칙3 : 남은 글자 중 처음 세 자리 + 글자 갯수 + 글자 내 'e'의 갯수 + '!'로 구성 (nav) (5) (1) (!) 예) 생성된 비밀번호 : nav51! 프로그램을 실행했을 때 나와야 하는 출력값은 다음과 같습니다. http://naver.com 일 때 → nav51! http://daum.net 일 때 → dau40! http://google.com 일 때 →..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/un2xV/btqT7VRKcWf/KDh1i6DNkdXxzrtsDuVdk1/img.png)
이런 얘기가 있습니다. 백문이 불여일견 백견이 불여일타 "백 번 듣는 것보다 한 번 보는 게 낫고, 백 번 보는 것보다 한 번 치는 게 낫다." 코딩 공부를 할 때 책이나 영상을 보기만 하는 것 보다는 직접 키보드를 치면서 따라하는 게 좋다는 의미인데요, 파이썬에서 위 문장을 출력하려면 이렇게 할 수 있겠죠. print("백문이 불여일견 백견이 불여일타") 그런데 만약 이 문장을 다음과 같이 두 줄에 찍으려면 어떻게 할 수 있을까요? 백문이 불여일견 백견이 불여일타 이렇게 하면 될까요? print("백문이 불여일견 백견이 불여일타") 네, 아마 실행을 시켜보면 에러가 날 거에요. 이 때 필요한 것이 바로 탈출문자라는 것입니다. 탈출문자는 역슬래시(\)와 함께 어떤 문자를 사용함으로써 문장 내에서 원하는 ..
지금까지 우리는 print() 문을 통해 문자열을 여러개 출력할 때 + 나 , 를 이용해서 해 봤습니다. + 를 이용하면 문자열들 사이에 띄어쓰기가 없고 , 를 이용하면 띄어쓰기로 구분되어 문자열이 출력되지요. print("a" + "b") # ab print("a", "b") # a b 이 외에도 다양한 포맷으로 문자열을 출력하는 방법이 있습니다. 보통은 본인에게 가장 편한 방법을 한 가지 정해서 사용해도 되지만 때에 따라서는 다른 방법을 사용해야 하는 경우도 생기기 때문에 모든 사용법을 익혀두시면 좋습니다. 첫 번째 방법으로는 % 가 있습니다. 따옴표로 둘러싸인 문자열 중간에 %d, %c, %s 등을 넣어두고 문자열 뒤에 % 를 적은 후 어떤 값을 적으면 그 값이 문자열 중간에 있는 %d, %c, %..
파이썬에서는 문자열을 편리하게 다루기 위해 굉장히 많은 함수를 제공하고 있습니다. 그 중 특히 유용하게 사용되는 몇 가지를 소개해 드리겠습니다. 함수이름 의미 lower 소문자로 변환 upper 대문자로 변환 isupper 대문자인지 확인 islower 소문자인지 확인 replace 문자열 바꾸기 index 찾으려는 문자열의 인덱스 (없으면 에러) find 찾으려는 문자열의 인덱스 (없으면 -1) count 문자열이 나온 횟수 소문자와 대문자가 섞인 문자열을 정의하고 문자열 처리 함수를 활용하여 다양하게 변경해봅니다. python = "Python is Amazing" print(python.lower()) # python is amazing print(python.upper()) # PYTHON IS ..
대한민국의 주민등록번호는 숫자 13자리로 구성이 됩니다. 990120 - 1234567 앞 6자리는 생년월일을 의미하구요. 생년 월 일 9 9 0 1 2 0 뒤 7자리는 각각 다음과 같은 의미를 가집니다. 성별 지역번호 검증번호 1 2 3 4 5 6 7 여러분이 만약 누군가의 주민등록증을 가지고 있다고 할 때, 처음 2자리를 보면 그 사람이 몇 년도에 태어났는지 알 수 있습니다. 그리고 3~6번째 자리를 보면 양력 생일도 확인할 수 있겠지요. 마찬가지로 성별이나 지역정보도 유추할 수 있을겁니다. 이와 같이 전체 주민등록번호 중에서 필요한 만큼의 정보를 끊어서 생년월일, 성별 등의 정보를 알 수 있는데요. 파이썬에서는 슬라이싱이라는 것을 이용해서 데이터를 원하는 만큼 잘라서 가져올 수가 있습니다. 그 전에..
문자열이란 문자들의 집합을 의미합니다. 파이썬에서는 작은 따옴표 또는 큰 따옴표로 감싸서 문자열임을 나타내는데요. 다음 코드에서 작은 따옴표가 앞 뒤로 붙은 '나는 소년입니다' 부분이 문자열이 됩니다. sentence1 = '나는 소년입니다' print(sentence1) # 나는 소년입니다 똑같은 방식으로 이번에는 큰 따옴표가 앞 뒤로 붙은 "파이썬은 쉬워요" 부분이 문자열이 되겠네요. sentence2 = "파이썬은 쉬워요" print(sentence2) # 파이썬은 쉬워요 잠깐! Q) 문자열에서 큰 따옴표와 작은 따옴표의 차이는 무엇인가요? A) 선택의 문제일 뿐 차이는 없습니다. 다만 앞 뒤 쌍은 꼭 맞춰주셔야 해요. 문자열을 큰 따옴표로 시작하면 큰 따옴표로 끝내고, 작은 따옴표로 시작하면 작은..
지금까지 배운 내용을 복습하기 위한 퀴즈를 드리겠습니다. 직접 한 번 풀어보시고 나서 정답을 확인해주세요. Quiz) 당신은 최근에 코딩 스터디 모임을 새로 만들었습니다 월 4회 스터디를 하는데 3번은 온라인으로 하고 1번은 오프라인으로 하기로 했습니다. 아래 조건에 맞는 오프라인 모임 날짜를 정해주는 프로그램을 작성하시오 조건1 : 랜덤으로 날짜를 뽑아야 함 조건2 : 월별 날짜는 다름을 감안하여 최소 일수인 28 이내로 정함 (아무리 늦어도 28일 이내의 날짜로 선정) 조건3 : 매월 1~3일은 스터디 준비를 해야 하므로 제외 프로그램을 실행했을 때 나와야 하는 출력 형태는 다음과 같습니다. 오프라인 스터디 모임 날짜는 매월 XX 일로 선정되었습니다. ▼ 해설 보기 더보기 잘 풀어보셨나요? 이번 퀴즈..
파이썬에는 무작위로 어떤 수를 뽑아주는 random 모듈이 있습니다. 다음과 같이 코드를 작성하고 2~3 차례 반복해서 실행하면서 값이 어떻게 출력되는지 눈여겨 봐 주세요. from random import * # random 모듈에서 모든 것들을 가져다 쓰겠다는 의미 print(random()) # 0.0 이상 1.0 미만의 임의의 값 생성 잠깐! Q) from random import * 에 밑줄이 생기면서 "Unused import ..." 경고문이 뜨는데 왜 그런 건가요? A) 예를 들어서 설명드릴게요. 1학년에 5개 반이 있는데 쉬는시간에 학생주임 선생님이 방송으로 5개 반 반장 모두 교무실로 호출합니다. 선생님은 화장실 청소 담당이 어디냐 물어보고 1반 반장이 "저희반이요" 하자 1반 반장에게..
- Total
- Today
- Yesterday
- onlineclass
- Tkinter
- pycharm
- repl.it
- Coding
- c언어
- 행맨
- 프롬프트 엔지니어링
- coloso
- 파이게임
- Unity
- 나도코딩
- ChatGPT
- vscode
- 아나콘다
- pygame
- GUI
- 비주얼 스튜디오 코드
- game
- 환경설정
- Visual Studio Code
- Mac
- Colab
- 코랩
- Xcode
- 챗GPT
- 파이썬
- 주피터노트북
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |