finderway의 등록된 링크

키자드에 등록된 총 501개의 포스트를 확인하실 수 있습니다.

Naver Blog

파이썬으로 레일 펜스 암호(Rail Fence Cipher) 구현하기

이번에는 이전 포스팅의 카이사르 암호에 이어서 레일 펜스 암호(Rail Fence Cipher)에 대해 알아보고 이를 파이썬 코드로 직접 구현해 보자. 레일 펜스 암호란? 레일 펜스 암호(Rail Fence Cipher)는 위와 같이 평문의 문자를 대각선으로 지그재그 형태의 위아래로 왔다갔다 비스듬하게 작성해서 맨 위의 첫 번째 라인부터 순서대로 취하여 암호문을 작성하는 방식이다. 위와 같이 "THISISASECRETMESSAGE"라는 평문이 있을 때 이를 레일 펜스 암호로 암호화하여 나온 결과물은 "TATGHSSEMAEIIERESSCS"라 되는 것이다. 이를 '전치 암호'라고도 부르는데, 사실 전치 암호는 '라우트 암호(Route Cipher)'나 '주상 전치 암호(Columnar Transposition Cipher)'를 모두 포괄해서 부른다. 그래서 레일 펜스 암호는 전치 암호의 한 종류라고 보면 된다. 이러한 전치 암호의 특징은 암호문과 복호화 된 문장의 답이 계속 달라진다는

Naver Blog

기네스북에도 등재되었던 대량 살인범 우범곤 총기난사 사건 이야기

이번에는 대한민국에서 사람을 가장 많이 죽인 대량살인범으로 당시에 기네스북에도 등재되었다고 알려진 대량 살인범 우범곤에 관한 이야기를 하려고 한다. 프로필 이름 : 우범곤(禹範坤) 출생 : 1955년 3월 18일, 경상남도 부산시 초량동 245-8 사망 : 1982년 4월 27일, 경상남도 의령군 궁류면 평촌리 본관 : 단양 우씨(丹陽 禹氏) 본적 : 경상북도 월성군 외동면 문산리 537 신체 : 174cm / 86kg 학력 : 금성고등학교 졸업 - 경남공업전문학교 중퇴 사인 : 수류탄 자살 범죄 : 대량 살인 우범곤의 생애 우범곤(사건 당시 27세)은 경상남도 부산시 초량동(現 부산광역시 동구 초량동) 245의 8번지에서 경찰관의 네 아들 중 셋째로 태어났으며, 당시 우범곤이 태어난 집은 나훈아의 생가와 고작 한 블록 떨어져 있었을 만큼 가까웠다고 한다. 학생 시절의 성적은 보통이었으며, 중학교 진학 이후에 실시된 지능지수 테스트에서 IQ는 100이 나왔다. 경찰관 아버지의 영향을

Naver Blog

파이썬으로 라우트 암호(Route Cipher) 구현하기

이번에는 카이사르 암호, 레일 펜스 암호에 이어서 라우트 암호에 대해 구현을 해 보려고 한다. 라우트 암호란? 라우트 암호는 (m * n) 격자에 평문의 문장을 기록하고 읽는 방법에 따라 글자를 취하여 암호문을 작성하는 방법의 일종이다. 여기서 읽는 방향과 격자의 수를 암호키라고 했을 때 가로/세로 12 * 5 격자를 준비하고 각 열을 따라 다음의 평문이 있다고 가정해 보자. "TREASURE BOX IS BURRIED AT TWO HUNDRED FEET TO NORTH AWAY FROM YOUR HOUSE" 여기서 공백을 제거하고 12 * 5 격자에 암호문을 구성하면 다음과 같은 암호문이 완성된다. "TUXRAHETRAMHRRIRTUDTTYYOEESITNFOHFOUABBEWDENARUSSOUDOREOWORE" 대충 이론적인 부분은 여기까지 알아보고 이번에는 위의 문장으로 라우트 암호 패턴을 직접 코드로 구현해 보자. # 라우트 암호(Route Cipher) 구현 import mat

Naver Blog

업비트 API를 이용한 파이썬 코인 자동매매 프로그램을 만들어 보자

이번에는 국내 최대의 코인 거래소 중 하나인 업비트의 OpenAPI를 이용해서 파이썬으로 코인 자동 매매 프로그램을 만들어보려고 한다. 사실 나 같은 경우에는 한참 도박 중독이었을 때 스포츠토토와 더불어서 코인을 미친 듯이 해댔다. 지금은 토토든 코인이든 전부 끊었지만 당시에는 일하는 와중에도 업비트 창을 하루종일 켜 놓고 모니터링을 할 정도였는데 당시에 피르마체인과 룸네트워크, 세럼 등에 50만원 씩 분산투자해서 장기투자를 하고 있었다. 장이 활발할 당시에는 엑시인피니티나 이오스가지고 단타까지 치면서 나름 쏠쏠하게 수익을 보고 있었는데... 그러다가 개 뜬금없이 FTX 사태가 터지면서 가진 재산의 60~70%가 날아가고 허겁지겁 손절 쳐서 코인 투자를 끊으면서 이걸 다시 복구 시켜야 한다는 생각이 들 여유도 없이 토토도 같이 끊으면서 도박 중독에서 탈출하게 되었다. FTX 거래소 설립자이자 FTX 사태의 주동자인 '샘 뱅크먼 프리드' 결론은 샘 뱅크먼 프리드의 개삽질로 터진 FTX

Naver Blog

윈도우 vs 리눅스 - 자신에게 맞는 운영체제를 골라보자

최근에 3년 만에 보는 친구가 나를 찾아왔다. 나처럼 컴퓨터에 관심이 많아서 프로그래밍 공부를 하고 있다는 근황을 접했는데 내가 이번에 직접 커스터마이징에 성공한 PC의 화면을 사진으로 찍어서 보여준 적이 있었다. 현재 내 PC에 적용된 리눅스 민트 커스터마이징 버전 그래서 처음에는 하단에 있는 plank dock(독)에 프로그램 아이콘들이 정렬되어 있는 걸 보고는 "너 혹시 애플의 맥 OS 사용 중이냐?"라고 물었다. 이에 나는 "저거 맥 아니다. 리눅스다."라고 대답했다. 리눅스를 저렇게 커스터마이징 하면서 꾸밀 수 있는지 몰랐던 것 같다. 그 친구는 현재 윈도우 11을 사용 중인데 본래 TPM 2.0이 없어서 윈도우 11로 업그레이드는 불가능했다고 한다. 그런데 약간의 편법으로 우여곡절 끝에 윈도우 11로 업데이트 했는데 게임하는 것 말고는 윈도우를 쓸 필요성을 못 느끼며, PC가 구동 중에 자주 블루스크린이 뜨면서 터지는 등 문제가 많다고 한다. 그래서 이참에 리눅스를 공부해

Naver Blog

일본의 히키코모리 인터넷 방송인 코지마 후카세(小島ふかせ) 이야기

이전 포스팅에서 일본의 히키코모리가 자신의 아버지에게 살해 당하는 사건을 작성했던 적이 있었다. 그래서 히키코모리라고 하니까 갑자기 이 사람이 생각나서 이 분에 대해 작성을 좀 해 보려고 한다. 이름 : 코지마 후카세(小島ふかせ) 본명 : 후카세 후우카(深瀬風香) 출생 : 1996년 1월 19일, 일본 효고현 신체 : 160cm 코지마 후카세는 일본에서는 유명한 인터넷 방송인으로 당시에는 한국에서 크게 인지도가 없었으나 유튜브에 올라온 다음 영상이 인기를 끌며 한국에서도 유명세를 타게 된 케이스이다. 저 때 당시에는 우울증이나 대인기피증 등의 정신병 증상이 가장 심했을 때라고 한다. 개인 방송을 하던 도중에 시청자로 보이는 한 남자가 일방적으로 그녀에게 욕설과 폭언 및 외모비하를 퍼붓자 후카세는 울음을 터뜨린다. 너무 하염 없이 울어서 한국에서도 이 인방 사건이 유명세를 타게 되었다. 위의 프로필 사진을 보면 알겠지만 21살때 부터 정신병을 앓아 왔으며, 피부 알러지가 있는 상당히

Naver Blog

리눅스 터미널(Terminal)의 유래와 자주 쓰는 명령어

친구가 리눅스를 전문적으로 공부해 보려고 한다. 근데 리눅스하면 터미널에서 명령어를 치는 것 말고는 아예 모른다고 해서 이게 뭔지 물어봤는데 나도 선뜻 대답을 하지 못했다. 왜냐하면 나도 아직 그 분야에서는 전문가가 아니라서 따로 정보를 조사해야 하는데 사실 '정보 조사' 만큼은 내 전공분야라고 할 만큼 이 부분에서는 자신이 있었기 때문에 이참에 리눅스에서 사용하는 터미널의 유래와 개념 및 자주 사용하는 명령어에 대해서 알아봤다. 리눅스 터미널(Terminal)의 유래 리눅스 민트 21.1 버전의 터미널 보통 리눅스하면 위와 같은 검은색 화면에 잡다한 글자들이 뒤섞여 있는 화면을 떠올리기 마련이다. 그런데 현재 가정에서 사용하고 있는 PC 말고 과거에 사용했던 컴퓨터는 대학이나 기업이 소유하고 있었던 거대한 다중 사용자 시스템이였다. 그리고 그런 거대한 컴퓨터라는 이름을 가진 기계는 일반 사용자가 들어가지도 못하게 강력한 보안 규정에 따라 안전한 방에서 관리되고 있었다. 그렇다면 그

Naver Blog

임신 중에 AV 촬영 하다가 사망한 AV 배우 이시노 요코(石野 容子) 이야기

이번에도 일본 AV 배우에 관한 이야기를 해 보려고 한다. 각자 저마다 사연이 있는 AV 배우들에 대해 작성했는데 이번에는 상당히 충격적인 사건을 접하고 고인이 된 AV 배우 이야기에 대해 찾아봤다. 이름 : 이시노 요코(石野 容子) 다른 이름 : 시라이 에리코(白井エリコ) 출생 : 1984년, 일본 사망 : 2009년 2월 12일(향년 25세) 신체 : B98 - W58 - H85(cm) / B형 활동 기간 : 2007년 ~ 2009년 일본에는 현재 연예인으로 활동 중인 배우 이시노 요코와 동명이인이라 검색하면 자세한 정보는 뜨지 않지만 일본의 포털 사이트인 yahoo 닷컴이나 구글에서 검색하면 약간의 정보는 열람 할 수 있다. AV 배우로 활동하던 시절부터 '임산부' 컨셉으로 나름 그쪽에서는 업계 네임드로 상당히 유명했다. 그런데 어린 나이에 첫째 아기의 양육비를 벌기 위해 AV 배우로 데뷔해서 촬영을 하다가 출산 이후에는 은퇴하는 듯 보였으나 둘째를 임신하고 다시 AV 업계에

Naver Blog

파이썬으로 모스 부호(Morse Code) 변환하기

파이썬 기초 부분 진도를 다 나가고 이걸로 뭐 할지 생각하다가 모스부호를 변환할 수 있는 방법을 떠올렸다. 그래서 여기저기 정보를 좀 찾아봤다. 근데 우선 모스부호가 뭔지부터 알아보자. 모스 부호(Morse Code) 모스 부호의 창시자 '새뮤얼 브리즈 모스(Samuel Finley Breese Morse, 1791 ~ 1872) 모스 부호(Morse Code)는 미국의 화가이자 발명가인 '새뮤얼 브리즈 모스'가 고안하여 1844년에 완성한 전신 기호이다. 점(.)을 의미하는 짧은 발신 전류와 하이픈(-)을 의미하는 긴 발신 전류만을 가지고 전신 부호를 이용해서 문장을 구성하여 전신기를 통해 전송할 수 있게 하였는데, 대표적으로 2차 세계대전과 베트남 전쟁에서 모스 부호를 사용하였으며, 통신기술이 발달한 현대에도 가장 기초적인 비상통신수단으로 간간히 사용되고 있다. 타이타닉 침몰 당시 구조요청 관련 모스 무전을 치는 장면 그 외에 타이타닉의 구조요청 모스 부호를 위와 같이 해독한 문

Naver Blog

음악 작업을 위한 변종 MX 리눅스인 AV Linux MX Edition(AVL-MXE)를 사용해 봤다

이번에 새로운 리눅스 배포판을 발견했다. MX 리눅스를 변종시킨 AV 리눅스라는 것인데 이는 음악 작업이나 동영상 편집 등의 기능이 있으며, 멀티미디어 컨텐츠 창작자를 타겟으로 배포된 리눅스 운영체제이다. 출처 : https://hamonikr.org/board_mkER88/117889 MX 리눅스를 변종시켰다고는 하지만 데비안 기반의 리눅스인 것이 특이점이다. 32비트 환경인 i386 및 64비트 환경인 x86-64 아키텍처 환경에서 최대 성능 및 지연시간이 비교적 짧은 오디오 제작을 위해 맞춤형으로 특수 개발된 커널 환경에서 사용할 수 있으며, 윈도우나 Mac OS X에서 디지털 오디오 워크 스테이션(DAW) 환경인 'Harrison Mixbus'를 위해서 지원되는 리눅스 플랫폼으로 권장되고 있다. AV Linux MX Edition MX Linux Customized, Molded and Shaped for Content Creators.. The multimedia conte

Naver Blog

한국으로 입국해서 실종된 일본인 나카무라 미나코 실종 사건

이번에도 일본 사건에 대해 알아봤다. 내가 일본이라는 나라의 애니나 드라마를 즐기는 문화에 관심이 많은 건 맞지만 이상하게 최근에 일본과 관련된 사건/사고를 많이 접하는 것 같다. 그런데 이번에는 한국이랑도 관련되어 있는 사건이라고 해서 흥미롭게 찾아봤다. 나카무라 미나코 실종 사건 당시 나카무라 미나코의 일본 전단지 실종된 사람의 이름은 나카무라 미나코(中村三奈子)이다. 일본의 니카타현 나가오카시에 살던 여성인데 1998년 3월에 고등학교를 졸업한 그녀는 실종 당일 대학입시 학원에 등록을 하러 갈 예정이었다. 그런데 다른 길로 샜는지 학원에 등록을 하러 가지도 않았으며, 집에도 귀가하지 않았다. 가족들이 집으로 돌아와 보니 미나코에게 입시학원 등록비로 주려고 한 돈 50만 엔 중 3만 엔을 빌려간다고 메모를 남겼다고 한다. 그런데 미나코가 왜 학원에 입시 등록을 하러 가지 않았는지는 도통 이유를 알 수가 없었다. 경찰 수사 과정에서 미나코가 실종되기 약 9일 전인 3월 25일, 그

Naver Blog

[파이썬 활용] 정규 표현식(Regular Expression) 모듈 - re 모듈 총 정리

이번에는 파이썬 진도 나가면서 개인적으로 가장 복잡하고 난이도가 높은 축에 속하는 정규표현식 모듈인 re 모듈에 대해서 알아보려고 한다. 개인적으로 이거 공부한다고 눈알 빠지고 머리도 좀 어질어질해서 타이레놀을 하나 복용했다. 정규표현식(Regular Expression) 프로그래밍 언어에서 '정규표현식(正規表現式 / Regular Expression)'이란 문자열을 다룰 때 일정한 패턴을 표현하는 일종의 형식 언어를 얘기한다. 줄여서 '정규식'이라고도 부르며, 영어로는 'RegEx' 혹은 'RegExp'라고 많이들 표현한다. 책에서는 이걸 파이썬 기초 부분에 집어 넣어 놨던데 개인적으로 이해가 가지 않았다. 대충 2시간 예습을 해 봤는데 지금껏 듣도 보도 못한 골 때리는 문법 패턴을 보였다. 파이썬에서는 're' 모듈을 import 해서 사용이 가능하며, 문자열에서 패턴 매칭 및 연산을 지원한다. 우선 이걸 파이썬 코드에서 제대로 활용하기 위해서는 아래의 표들을 싸그리 암기해 놓는

Naver Blog

안타까운 사연을 가진 재일교포 AV 배우 무카이 아이(向井 藍) 이야기

이전 포스팅에서 한국에서 성형 수술 후 떡상했다가 손가락 잘못 놀려서 나락으로 가버린 AV 배우 후카다 에이미(深田 えいみ) 이야기를 작성하다가 한국과 관련되어 있는 또 다른 AV 배우가 생각났다. 근데 후카다 에이미에 비해서 사연이 좀 있는 배우이며, 어린 시절부터 상당히 기구한 인생을 살았으며, 슬픈 가정사를 가지고 있는 것으로 유명하다. 프로필 이름 : 무카이 아이(向井 藍) 다른 이름 : 하네다 마리(羽田 真里) 출생 : 1993년 10월 24일, 일본 도쿄도 신체 : 157cm / B80 - W56 - H82(cm) / C컵 / B형 취미 : 쇼핑, 운동, 스노우보드 타기, 소프트볼, 프로레슬링 감상 소속사 : EVE-REST 전속 계약 : 마돈나 밝혀진 안타까운 가정사 어린 시절의 무카이 아이 그녀는 한국과 일본 혼혈의 재일교포이며, 어린시절 가정환경이 상당히 복잡하다. 초등학생 무렵부터 본인의 삶의 의미를 찾지 못하여 방황하기도하고 심각하게 자살을 고려할 정도였다고 한다

Naver Blog

파이썬으로 윈도우 실행파일(.exe) 만들기

이번에는 파이썬으로 실행 파일을 만들어 보려고 한다. 실행 파일이라고 하면 윈도우에서 실행 가능한 exe라는 확장자를 가진 파일을 의미하며, 윈도우에서는 Pyinstaller 패키지를 이용해서 exe 파일을 생성할 계획이다. 리눅스는 코드 위에 셸 환경변수 하나만 추가해 주면 './' 명령어로 바로 실행가능 하다. 본래 윈도우는 내 계획에 없던 운영체제인데 테스트 용도로 자주 사용할 것 같아서 가상머신으로 하나 만들었다. 리눅스는 exe 파일이 아니라 시스템 자체 내에서 실행할 수 있는 파일 생성법이 간단하기 때문에 여기서는 리눅스 대신 윈도우 환경에서 실행하는 내용만 다루기로 한다. 우선 실행 파일을 생성할 파이썬 파일로 테스트 하기 위해 임의로 프로그램을 하나 만들었다. 위와 같이 아날로그 시계를 터틀 GUI 그래픽을 이용해서 만들었다. 뭐 만드는 방법이나 구조는 간단한데 반복되는 코드가 많아서 좀 짜증이 났다. 그래도 잘 굴러간다. 참고로 위의 GUI 그래픽을 이용한 아날로그

Naver Blog

그때 그 사건 - 2016년 오토 웜비어 북한 여행 억류 사망사건

2004년 김선일 사건, 2008년 이호성 일가족 살인사건에 이어서 '그때 그 사건'이라는 키워드 자체가 뭔가 블로그에 글을 쓰기 위한 일종의 컨텐츠(?)화가 되어가고 있는 것 같다. 이전에 썼던 '그때 그 사건' 관련 포스팅 중에 혹시나 오탈자가 있는지 체크하면서 읽다가 '그때 그 사건'하면 생각나는 사건이 하나 더 있어서 조사해 보려고 한다. 프로필 이름 : 오토 프레더릭 웜비어(Otto Frederick Warmbier) 출생 : 1994년 12월 12일, 미국 오하이오 주 신시내티 북한 억류 : 2016년 1월 2일 북한에서 발표한 죄명 : 국가전복죄 판결 : 노동 교화형 15년 사망 : 2017년 6월 19일, 미국 오하이오 주 신시내티 학력 : 와이오밍 고등학교 - 버지니아 대학교 경영학부 종교 : 유대교 북한 여행 중 억류 재학 중이었던 고등학교에서 졸업 연설을 하는 오토 웜비어 미국 오하이오 주 신시내티에서 부유한 유대인 가문 출신으로 자란 오토 웜비어는 집안의 장남으

Naver Blog

파이썬을 활용하여 로또 번호를 추출한 뒤에 실제로 구매해 봤다

이번에는 파이썬 프로그래밍 언어를 실생활에 활용하기 위해서 어떻게 할까 고민하다가 랜덤 난수 번호로 로또 번호를 조합해서 실제로 구매를 해 봤다. 한국에서 로또(lotto)라고 하면 과거에는 일확천금의 기회를 노리고 구매하는 사람들이 많았다. 그런데 현재는 1등 당첨자가 최소 10명 이상으로 속출하면서 가뜩이나 어마어마하게 걷어가는 세금 때문에 불만족스러운 1등 당첨금이 과거와는 다르게 상당히 적어지고 있다. 많게는 30명이 동시에 1등에 당첨되는 사례까지 본 적 있다. 이러한 많은 당첨자들로 인해 일각에서는 주작 논란까지 뜨면서 계속 말이 많아지고 쉽사리 로또에 대한 의혹이 가라 앉지도 않으며, 일확천금을 노리는 절박한 사람들을 상대로 사기를 치는 수법까지 횡행하고 있다. 그래서 직접 로또 1등에 당첨될 확률이 얼마나 되는지 실제로 계산을 해 봤다. 로또는 1등에 당첨되려면 45개의 볼 중에 임의로 나온 볼 숫자 6개를 전부 적중시켜야 한다. 그리고 1/8,154,060의 확률을

Naver Blog

충격 실화 - 일본의 고위 관료가 친아들을 살해한 사건

사건이 일어난 해 2019년자 일본의 47news 기사 오늘 할 짓 없어서 일본의 야후 사이트에 들어가서 일본 프로야구 NPB 소식좀 알아보려다가 장남을 살해한 전 농림수산성 차관부의 주장이 기각되었다는 기사를 보게 되었다. 시간이 좀 지난 기사이긴 하지만 보통 아들이 부모를 살해하는 존속 살인은 많이 봤어도 아버지가 아들을 살해하는 경우는 잘 못봐서 그런지 갑자기 흥미가 생겨서 이 사건에 대해 찾아보기로 했다. 우선 자기 아들을 살해한 살인범의 신상부터 알아보자. 프로필 이름 : 쿠마자와 히데아키(熊澤英昭) 출생 : 1943년(쇼와 18년), 일본 기후현 출생 학력 : 도쿄도립 우에노 고등학교 졸업 - 도쿄대학교 법학부 졸업 경력 : 전 농림수산성 사무차관(2001 ~ 2002), 전 농림수사 심의관(1998 ~ 2001) 자세한 사건 내막 쿠마자와 히데아키의 아들인 쿠마자와 에이이치로(熊澤英一郞, 1975.03.20 ~ 2019.06.02) 당시 아버지에게 살해 당한 쿠마자와 에

Naver Blog

한국에서 성형수술한 뒤에 떡상한 AV 배우 후카다 에이미(深田 えいみ) 이야기

이번에도 일본과 관련된 이야기를 좀 해보려고 한다. 저번 포스팅에서 사기 계약을 당해 강제로 AV 배우로 활동 했던 호시노 아스카에 대한 정보를 찾으면서 글을 쓰다가 갑자기 한 AV 배우가 생각이 나서 글을 써 보려고 한다. 프로필 이름 : 후카다 에이미(深田 詠美) 이전 이름 : 아마미 코코로(天海 こころ) 출생 : 1998년 3월 18일, 일본 도치기현 신체 : 158cm / 55.5kg / B87.8 - W63.5 - H91.1(cm) / A형 / F컵 소속사 : 포티포 매니지먼트 데뷔 : 2018년 11월 AV 배우 데뷔 전과 아마미 코코로 활동기 일본의 CanCam 인터뷰 중 중학교 다니던 시절의 그녀는 육상부라서 운동을 많이한 덕분에 많이 먹어도 살이 잘 찌는 체질은 아니었다. 그러나 고등학교에 진학한 뒤부터 운동을 그만뒀는데 이때는 자신이 살이 안찌는 체질인 줄 알고 등하교길 열차를 기다리면서 튀김을 먹거나 학식으로 카레빵을 먹고, 친구와 놀면서 스위트 뷔페에 가는 것을

Naver Blog

[파이썬 활용] 파이썬의 자주 사용하는 내장 표준 모듈

이번에는 파이썬에 내장되어 있는 표준 모듈(stadard module)에 대해서 몇 가지만 알아보자. 사실 전부 다 사용은 해 보고 싶지만 양이 너무 많기 때문에 대표적으로 자주 쓰이는 모듈만 추려서 사용해 보려고 한다. sys 모듈 파이썬에서 sys 모듈은 인터프리터가 제공하는 변수나 함수를 제어할 수 있는 기능을 제공한다. 주로 인터프리터 모드에서 사용되지만 스크립트 모드에서도 필요에 따라 사용할 수는 있다. 자세한 기능은 인터프리터 모드에서 help(sys) 명령어를 통해 확인하면 된다. >>> import sys >>> help(sys) 우선 이놈의 자주 쓰이는 키워드가 다음과 같다. >>> import sys >>> sys.builtin_module_names ('_abc', '_ast', '_bisect', '_blake2', '_codecs', '_collections', '_csv', '_datetime', '_elementtree', '_functools', '_he

Naver Blog

[희대의 수학 떡밥] 48÷2(9+3)의 답은 2일까? 288일까?

때는 2010년인가 2011년으로 기억된다. 한때 인터넷 커뮤니티를 뜨겁게 달구었던 논쟁거리가 하나 있었는데 바로 아래와 같은 수학 공식의 답이었다. 미국의 한 수학 시험에 실제로 출제된 문제이며, 분명히 수식만 봤을 때는 상당히 단순해 보인다. 그런데 이걸 어떻게 해석하느냐에 따라 사람들의 답은 '2'와 '288'로 나뉘어졌다는 것이다. 내가 개인적으로 풀어봤을 때, 첫 번째 답은 288이 나왔는데 또 두 번째 시도 했을 때는 '2(9+3)'을 한 개의 항으로 간주해서 분배법칙으로 문제를 풀었을 때는 답이 2가 나왔다. 좌 - 구글 계산기 / 우 - 네이버 계산기 심지어 포털 사이트인 구글과 네이버의 계산기 모두 288이 도출되었다. 물론 괄호 중간에 곱하기 기호 '*'를 집어 넣어서 계산하기는 했지만 그렇다면 답은 288일까? 이걸 보면 또 그렇지 않다. 왼쪽 CASIO 계산기는 288이 나오지만 오른쪽 CASIO 계산기는 2가 나오며, 아래의 텍사스 계산기도 같은 공식인데도 다

Naver Blog

[파이썬 기초] json 및 pickle에 의한 파일 입출력

드디어 파이썬 기초 게시판을 마무리 할 때가 왔다. 여기서는 파이썬 기초 부분의 대미를 장식할 json과 pickle 모듈을 사용해서 파일 입출력 객체를 사용해 보려고 한다. json과 pickle은 복잡하고 긴 내용은 아니기 때문에 간단하게 끝난다. json 모듈 여기서 사용할 json은 "JavaScript Object Notation"의 약자로 파이썬의 json 모듈은 텍스트 직렬화(text serialization)를 통해 객체를 덤프하여 저장하고 가져오는 역할을 한다. json은 파이썬의 내장 타입 객체만을 처리할 수 있는데 이는 사용자 정의 클래스 객체는 저장할 수 없다는 뜻이 된다. json.dump( ) 메소드는 파이썬 타입의 객체를 문자열 표현으로 변환하여 파일에 저장하고, json.load( ) 메소드는 파일에 저장된 문자열을 자료형 형식으로 다시 가져온다. >>> import json >>> f1 = open('json.txt', 'w') >>> x = [10,

Naver Blog

[도시전설] 소름 끼치는 게임 속 괴담 모음

이번엔 네이버 지식인 도시괴담에 이어서 게임 속 도시괴담에 대해서 알아보려고 한다. 나는 학창시절 방구석에만 박혀서 자는 시간을 제외하고는 하루 종일 컴퓨터 게임만 하는 게임 중독이었다. 지금은 게임을 끊은지 10년이 되었지만, 지금 다시 게임을 하라고 하면 취미로 1~2시간 정도는 할 수 있을지 몰라도 어릴 때 처럼 막 15시간 씩 하고 그러지는 못할 것 같다. 과거에 내가 하던 게임들 속에는 소름 끼치는 각종 괴담들이 인터넷에 막 퍼지기도 하던 시기였는데 어떻게 보면 내 인생의 황금기라고 할 수 있는 그 때 그 시절들을 추억하면서 당시에 게임 속에 어떤 괴담들이 있었는지 직접 알아보기로 했다. 메이플 스토리 - 화이트 레이디 화이트레이디(White Lady) 메이플스토리 괴담 중에 가장 유명한 괴담 중 하나인 '회이트레이디' 괴담이 있다. 사실 한국의 메이플스토리에서는 잘 알려지지 않은 괴담인데 이는 북미의 GMS(글로벌 메이플스토리)의 괴담에서 넘어왔다. 자세한 내막은 다음과

Naver Blog

[파이썬 활용] 사용자 정의 모듈 만들어 보기

드디어 파이썬 기초 파트를 전부 학습하고 이제 파이썬 심화 과정으로 넘어왔다. 원래 따로 심화 과정 게시판을 만들까 생각은 했지만 양이 얼마 되지 않아서 여기서 [파이썬 활용] 게시판 내용과 같이 사용하려고 한다. 파이썬 심화 첫 포스팅은 '사용자 정의 모듈'에 관해서 학습하고 내용을 작성할 계획이다. 사용자 정의 모듈 본래 '모듈(module)'은 파이썬을 구조화하는 단위를 의미한다. 변수나 함수, 클래스 등을 갖는 파이썬 프로그램 파일(*.py)이나 컴파일된 바이트 코드(*.pyc), 최적화된 바이트 코드(*.pyo), 파이썬 C 확장 DLL 파일(*.pyd) 등이 전부 모듈이 될 수 있다. 사용자가 모듈과 패키지를 직접 구성할 수도 있는데 import 명령은 모듈 및 패키지를 메모리에 로드하여 사용하게 한다. 한 번 import 된 모듈을 다시 import 하려면 tmp 모듈의 imp.reload( ) 함수를 사용하면 된다. 물론 메모리상에서 로드된 모듈을 삭제하려면 객체를 삭

Naver Blog

사기 계약에 의해 강제로 AV에 출연한 호시노 아스카(星野 明日香) 이야기

현재는 일본 AV 배우들의 활동 중 가혹행위 방지 및 인권 등과 더불어서 사기 계약 출연 방지를 위한 목적으로 'AV 신법'이 발의되었다. 하지만 과거에는 이러한 사기 계약으로 인해 'Bakky 사건'이 생기기도 했으며, 지금과는 또 다르게 수위도 엄청 강력하기도 했고 본래 계약서 내용이나 컨셉과는 다르게 촬영을 하는 경우도 빈번했다. 그래서 이번에는 과거에 강제로 AV에 출연한 사기 계약 피해자인 前 AV 배우 호시노 아스카(星野 明日香) 이야기를 해 보려고 한다. 이름 : 호시노 아스카(星野 明日香, ほしの あすか) 출생 : 1986년 12월 5일, 일본 니가타현 신체 : 152cm / B80-W56-H80(cm) / A컵 / AB형 데뷔 : 2004년 그라비아 아이돌 활동 AV 배우 : 2010년 ~ 2014년 AV 배우로 활동하기 전의 그녀는 2004년, '미스 매거진 2004'의 주간 소녀 매거진에 발탁되기도 하였으며, 잘 나가던 시기에는 여자 연예인으로만 구성된 풋살팀인

Naver Blog

[파이썬 기초] 파일 입출력 클래스 및 객체 열기/닫기

드디어 클래스 파트를 끝내고 파이썬 기초 부분의 마지막 파트인 '파일 입출력'으로 넘어왔다. 클래스 파트가 끝난 줄 알았는데 다시 파일 입출력 '클래스'라는 파트부터 나온다... 우선 여기서는 파일 입출력 클래스와 파일 객체 열기/닫기 부분에 대해서 학습해 보자. 파일 입출력 클래스 파이썬에서 파일 입출력 기능을 사용하기 위해서는 io 모듈을 import 해야 한다. 파일 입출력은 크게 텍스트 파일의 입출력과 바이너리 파일 입출력, 그리고 raw 입출력 등 3가지 형태의 입출력 기능이 있다. io 모듈의 클래스 계층 구조 위의 그림은 io 모듈의 클래스 계층 구조를 나타낸다. 입출력을 위한 최상위 추상 기반 클래스인 ABC(abstract base class)는 IOBase 클래스이며, IOBase 클래스로부터 상속받은 TextIOBase, BufferedIOBase, RawIOBase 추상 기반 클래스가 있다. 텍스트 파일 입출력은 TextIOBase로부터 상속 받은 StringI

Naver Blog

일본의 심령스팟 탐사 - 일본 여고생 츠보노 온천장 실종 사건

최근에 자주 일본에 관련된 포스팅을 자주하는 것 같다. (그것도 안 좋은 쪽으로 자주...) 이번에는 1996년에 발생한 일본의 실종 사건에 대해 다뤄보려고 한다. 일본 인터넷 상에서는 상당히 화제가 된 사건이기도 하다. 실종된 두 여고생 당시 실종자였던 여고생 야시키 에미와 타쿠미 나루미 1996년 5월 5일, 일본 토야마현 히미시(氷見市)에 사는 여고생인 타쿠미 나루미(田組育鏡)와 야시키 에미(屋敷恵美)가 실종되었다. 이들은 히마시의 현립 여고 동창생으로 나이는 당시 19살이었다. 가족들의 진술에 의하면 두 사람은 밤 9시에 느닷없이 "우오즈시에서 담력훈련을 하고 오겠다"라는 말을 남기고 집을 나섰다. 이들은 실종자 중 B가 보유한 승용차로 히미시를 출발하여 담력시험을 하기 위해 문제의 실종된 우오즈시(魚津市)의 츠보노 온천장(坪野鉱泉)으로 향하게 된다. 이들은 중간에 신미나토시(新湊市)에서 젊은이들이 자주 찾는 명소인 카이오마루 해양 파크에 들러서 친구를 만났으며, 밤 10시

Naver Blog

[파이썬 기초] 파일 입출력 관련 객체 메소드

이전 포스팅에서 open( ) 함수로 다양한 파일 객체를 생성하는 방법에 대해 학습했다. 여기서는 파일 객체 메소드인 write( ), read( ), readline( ), readlines( ) 등을 사용하여 입출력을 수행하는 방법에 대해 학습하며, 추가적으로 seek( ), tell( ) 메소드에 대해서도 학습해 보자. write( ) / read( ) 메소드 write( ) 메소드는 생성된 파일 객체가 f라고 했을 때, f.write(string) 처럼 string 문자열이 인자로 전달되면 내용을 파일에 출력한 다음 바이트 수를 반환하는 기능을 한다. 텍스트 파일에서 출력할 string은 str( ) 객체이며, 바이너리 파일에서 출력할 string은 bytes, bytearray, memoryview, array.array 등의 바이트 객체가 된다. 보통은 read( ) 메소드와 자주 사용되며, seek(0) 메소드를 이용해서 커서를 파일의 시작위치 지점으로 옮긴다음 단어 배

Naver Blog

외모지상주의 범죄 - 강도 얼짱 사건 및 유사한 사건

예전에 뉴스에서 범죄 속보를 본 적이 있었다. 워낙 오래된 일이라 자세히 기억은 안 나지만 당시에 핫했던, 거의 유행어 급의 신드롬을 몰고왔던 '강도 얼짱' 이 네 글자는 지금도 똑똑히 기억하고 있다. 그래서 이를 검색해서 자세한 정보를 알아보기로 했다. 한국 - 강도 얼짱 사건 당시 인터넷에 공개된 이미혜의 수배 전단지 사건은 2003년으로 거슬러 올라간다. 경상북도 경주시 안강읍에 살던 이미혜는 2003년 1월 초, 경상북도 포항의 한 카풀 승강장에서 피해자를 차에 태워주는 것처럼 속인 뒤 칼로 위협하고 금품과 카드를 빼앗은 특수강도 혐의로 공개 지명수배 되었다. 평범한 강도 사건이 이렇게 당시 사회를 떠들썩하게 만든 이유는, 이미혜의 수배 사진이 상당히 예쁘게 생겼기 때문이었다. 게다가 수배 전단에도 '얼굴 미인형'이라고 기재되어 있을 정도였으며, 한 네티즌이 공개 수배 전단을 디지털 카메라로 찍어서 인터넷에 올린 것이 화제가 된 계기였다. 당시 개설된 이미혜의 팬카페 이에 네

Naver Blog

[파이썬 기초] 메타 클래스와 추상 클래스

클래스 상속 파트를 끝내고 이번에는 메타 클래스(meta class)와 추상 클래스(abstract base class)에 대해서 학습을 해 보기로 했다. 메타 클래스(meta class) 인스턴스, 클래스, 메타 클래스 간의 참조관계 일반 클래스의 인스턴스는 객체 인스턴스이고 메타 클래스(meta class)의 인스턴스는 클래스가 된다. 즉, 메타 클래스 자체로도 클래스를 생성할 수 있다는 뜻이다. 위의 그림은 인스턴스와 클래스, 메타 클래스 간의 참조 관계를 보여준다. 그리고 잠시 후에 학습할 추상 클래스(abstract base class)는 추상 메소드(abstract method)를 하나 이상 가진 클래스로, 이는 인스턴스를 따로 생성할 수 없다. class type(name, bases, dict) name은 클래스의 이름을 의미한다. base는 상위 클래스를 지정하는 튜플(tuple) 타입이다. dict는 클래스 몸체의 속성을 정의하는 사전 객체이다. type 클래

Naver Blog

일본인들이 애플의 아이폰을 주로 쓰는 이유 분석

나는 드라마를 좀 많이 보는 편이다. 최근에는 퇴근하면 집에서 한국의 일일 드라마인 '비밀의 여자'와 '금이야 옥이야'를 즐겨 보고 주말에는 '진짜가 나타났다!'를 즐겨본다. 이건 정해진 시간에 방영을 하기 때문에 내 하루 일과의 루틴을 깨지 않는 선에서 주로 시청하는 드라마지만, 일을 하면서 점심시간이나 남는 짜투리 시간에는 '도라마코리아'라는 어플을 통해서 일본 드라마를 즐겨 시청한다. 그런데 옛날에 종영된 드라마나 최근 일본 드라마를 보니까 출연 배우들이 전부 아이폰을 쓰고 있다. 일본 예능을 봐도 연예인이고 패널들이고 할 것 없이 아이폰을 사용하고 있으며, 학원/멜로물 애니메이션을 봐도 애니 속 캐릭터들이 너나 할 것 없이 전부 아이폰을 쓰고있다. 자국인 일본에서도 소니에서 스마트폰을 만드는 걸로 아는데 왜 일본인들은 애플의 아이폰에 환장을 하는 걸까? 일본 드라마 '미스터리라 하지말지어다'의 여자 주인공이 사용하는 갤럭시 폴더블폰 물론 모든 일본인이 전부 아이폰만 사용하는

Naver Blog

[파이썬 기초] 자료구조 클래스 - 스택, 큐, 유리수

이번에는 대표적인 자료구조 클래스인 스택(stack)과 큐(queue), 유리수(rational number)에 대해서 학습해 보자. 파이썬은 list를 사용하여 간단하게 스택과 큐를 구현할 수 있다. 여기서는 우선 list를 이용해서 스택과 큐를 구현해 보고 fractions 모듈을 사용해서 유리수 코드를 작성해서 구조를 이해해 보자. 스택(stack) 스택(stack) 알고리즘의 원리 스택(stack)은 LIFO(Last-In First-Out) 구조로 되어있는 알고리즘 형태를 가지고 있다. 즉, 마지막에 들어간 데이터가 먼저 나오는 구조이다. 기본적인 스택은 list의 list.append( ) 메소드와 list.pop( ) 메소드를 사용한다. 그 외에 다른 방법은 list를 활용해서 Stack 클래스를 정의하는 방법도 있다. >>> stack = [] >>> stack.append(10) >>> stack.append(20) >>> stack.append(30) >>> sta

Naver Blog

[도시전설] 소름 끼치는 네이버 지식인 질문 괴담 모음

에펨코리아를 잠깐 탐방하다가 7년 전의 글을 잠깐 보게되었다. 거기서 네이버 지식인 질문을 모아놓은 게시글을 잠깐 보게되었는데 꽤나 소름끼치는 질문들만 모아 놓은 글이었다. 그래서 거기 모아 놓은 글들을 포함해서 또 어떤 질문들이 있는지 직접 찾아보게 되었다. 시체 부패 기간 질문 질문 그대로다. 이 질문자는 뒷뜰이라는 장소에 흙이 축축한 상태라는 구체적인 조건까지 제시하면서 시체가 썩어서 부패할 때 까지 얼마나 걸리는지 물어봤다. 그러자 댓글로 한 유저가 "너 살인하고 뒤뜰에 묻었구나"라고 상당히 날카로운 통찰력을 보여주면서 화제가 되었던 질문이 있었는데 지금은 원문의 글이 삭제되었는지 찾아도 보이지 않는다. 라조육이사이 2012년 네이버 지식인에 한 질문이 올라왔다. 제목은 "라조육이사이 해보신 분 어디서 만드셨나요?" 라는 도통 알 수 없는 질문을 올리게 된다. 제목도 제목이지만 질문의 내용 자체가 알아들을 수 없는 기이한 단어들로 나열되어 있어서 특이점이 상당히 많이 오는 질

Naver Blog

[파이썬 기초] 디스크립터 속성 접근 메소드와 property 내장 클래스

이번에는 디스크립터(descriptors) 속성 접근 메소드와 property 내장 클래스에 대해서 알아보자. 디스크립터(descriptors) 속성 접근 메소드 다음 표는 디스크립터(descriptors) 클래스의 속성에 접근하는 메소드 목록이다. 접근 메소드 기능 설명 __get__(self, instance, owner) 소유자 클래스의 속성 혹은 소유자 클래스 인스턴스의 속성에 접근할 때 호출된다. owner를 통해 속성에 접근하면 owner = None이 되며, 속성값 자체를 반환한다. __set__(self, instance, value) 소유자 클래스의 속성 혹은 소유자 클래스 인스턴스의 속성을 value로 설정할 때 호출되며, 반환값은 없다. __delete__(self, instance) 소유자 클래스의 인스턴스 속성을 삭제할 때 호출되며, 반환값은 없다. 디스크립터 클래스는 __get__( ), __set__( ), __delete__( ) 메소드를 갖는 클래스로

Naver Blog

리눅스 민트 21.1 버전에 카카오톡 설치해 보기(wine 이용)

이번에는 리눅스 민트에서 우리나라의 국민 메신저인 카카오톡을 설치해 보려고 한다. 보통 리눅스에서는 윈도우에서만 호환이 가능한 카카오톡을 직접 실행할 수는 없지만 'wine'이라는 윈도우 프로그램 호환 레이어를 사용해서 설치해 보려고 한다. 본래 wine(와인)은 'WINdows Emulator'라는 이름의 약어였으나, 윈도우와의 저작권 법적 분쟁을 회피하기 위한 용도 및 에뮬레이터라는 이미지를 탈피하기 위한 목적으로 'Wine Is Not Emulator'로 바꿨다. 하모니카 6.0 Taebaek(태백) 버전의 카카오톡 설치 과거에는 'Playonlinux'라는 파생버전으로 윈도우 프로그램을 호환 시켜서 실행했었지만, 현재는 개발 업데이트가 중단된 것인지, 카카오톡 설치까지는 진행되도 실행이 되지 않는다. 그래서 Lutris를 이용해서 카카오톡을 설치하는 경우가 많은데, 나 같은 경우에는 wine 하나만으로 카카오톡을 설치해서 실행하려고 한다. Wine 설치 우선 wine부터 설치

Naver Blog

[파이썬 기초] 클래스 상속 IS-A 관계

연산자 오버로딩 파트가 끝나고 이제 클래스 상속 파트로 넘어왔다. 보통 객체지향을 확장한 경우에는 캡슐화나 다형성에 관해서 학습을 하겠지만, 여기서는 IS-A 관계 혹은, HAS-A 관계 등에 대해 먼저 학습을 해 보자. 우선 클래스 상속에 대해 대략적인 개념부터 이해해 보자. 클래스 상속(class inheritance) 생물학적 상속의 관계(Biological Inheritance Vector)를 나타내는 이미지 사전적인 의미의 '상속(相續)'이란 사람의 사망에 의한 재산 및 신분상의 지위의 포괄적인 승계를 의미한다. 그리고 생물학적인 의미의 상속은 다른 말로는 '유전(遺傳)'이라고도 하는데 어버이의 성격이나 체질, 형상 따위의 형질이 자손에게 전해지는 현상을 의미한다. 그리고 객체지향에서 말하는 상속의 의미는 아마 유전에 더 가까울 것 같다. 객체지향의 클래스에서 상속은 객체지향 프로그래밍의 아주 중요한 특성 중 하나이다. 클래스를 계층적으로 구성하여 상위 클래스(super c

Naver Blog

그 시절 추악한 아이돌 팬덤 - 스타킹 여고생 자살사건

과거 2000년대 초중반 시절로 거슬러 올라가 보자. 지금의 아이돌 팬덤 문화나 분위기가 어떤지 자세히는 모른다. 그런데 2000년대 옛날 아이돌 팬덤은 인간 쓰레기들 집단 그 자체였다. 그래서 난 그 당시 동방신기의 팬덤이었던 카시오페아와 SS501의 팬덤이었던 트리플S 등의 쓰레기들과 인터넷으로 싸우기도 했다. 과거 SBS 예능 X맨 中 옛날에 장안의 화제였던 X맨이라는 예능이 기억난다. 지금은 BJ를 하고 있는 배우 강은비가 출연하여 동방신기 멤버들과 커플 로맨스 컨셉을 가진 회차였는데 여기서 강은비는 동방신기 팬들의 악플 테러를 받으면서 괴로운 나날들을 보내기도 했으며, 당시 네이버와 네이트판은 온통 강은비 욕으로 들끓게 되었다. 참고로 당시에 학창시절을 보낸 사람들은 알겠지만 그 당시 동방신기 팬덤인 카시오페아는 현재의 개념 없는 악성 팬들은 명함도 못 내밀 수준의 엄청난 쓰레기 집단이었다. 좌 - 당시 강은비의 미니홈피 / 우 - 인터뷰 당시 동방신기 멤버들과의 X맨 로맨

Naver Blog

[파이썬 기초] 클래스 상속 - super() 내장함수와 다이아몬드 구조의 다중 상속

이번엔 이전의 클래스 상속의 IS-A 관계에 이어서 super( ) 내장함수와 다이아몬드의 구조를 가진 다중 상속에 대해서 살펴보자. super( ) 내장함수 super( ) 내장함수는 속성 해결순서(method resolution order)인 __mro__ 속성의 상위 클래스 대행객체(proxy object) 자체를 반환한다. super( )는 주로 두 가지 경우에 유용하게 사용되는데, 하나는 단일 상속에서 상위 클래스를 참조하기 위해 사용되고, 또 다른 하나는 다이아몬드 구조 같은 다중 상속에서 상위 클래스의 메소드를 중복하여 호출되지 않게 방지하는 역할을 한다. >>> class B: ... def __init__(self): ... print('B 호출') ... >>> class D(B): ... def __init__(self): ... super().__init__() ... >>> 위의 클래스 구조를 살펴보자. 상위 클래스 B는 __init__( ) 메소드에서 'B

Naver Blog

일본 역사상 최악의 강력 범죄 - 여고생 콘크리트 살인사건

오늘 유튜브 알고리즘으로 디바제시카님의 영상 하나를 보게되었다. 내가 원래 그런 영상을 잘 보는 성향은 아닌데 이놈의 알고리즘은 어떤 구조로 되어 있는지 왜 나한테 그 영상을 추천해 줬는지 모른다. 그런데 약간 자극적인 썸네일과 디바제시카님의 미모에 반해서(?) 홀린 듯이 영상을 보게 되었는데 주제가 1980년대 일본의 '여고생 콘크리트 사건'이었다. 옛날에 대충 들어서 알고는 있었지만 어떻게 사건 전개가 이루어졌는지는 모르기 때문에 확실하게 그 사건에 대해 조사를 해 보기로 했다. 사건의 전반적인 내용은 나무위키와 일본어 위키피디아를 참고 했지만, 더 디테일하고 확실하게 조사하기 위해서 일본의 야후 등 여러 사이트를 돌아다니면서 정보를 수집하고 내용 전개 순서를 고민해서 정리했다. 우선 범인들의 신상부터 파 보자. 가해자 및 피해자 신상 이름 : 미야노 히로시(宮野裕史) - 현재 요코야마 히로시(横山裕史)로 개명 출생 : 1970년 4월 30일(현재 53세), 일본 카츠시카구 사건

Naver Blog

[파이썬 기초] 클래스 상속 HAS-A 관계

이번에는 IS-A 관계에 이어서 HAS-A 관계에 대해 알아보자. HAS-A 관계 사실 학창시절에 기본 영어 문법을 학습한 적이 있다면 be동사인 is와 현재시점인 3인칭 단수로 쓰이는 has를 공교육을 받은 사람이라면 모두 알고 있을 것이다. is는 "~~이다", has는 "가지다"라는 기본형을 가진 동사인데 이전 포스팅에서 IS-A 관계에 대해 생물학적인 상속 관계를 비유해서 학습한 적이 있다. HAS-A 또한 마찬가지이다. 이 표현 또한 상속 관계에 사용된다. 그리고 HAS-A 관계는 크게 구성(composition)관계와 집합(aggregation)관계가 있다. 구성 관계는 한 부분으로의 강력한 결합관계를 가지는 경우를 말한다. 그리고 집합관계는 느슨한 연관관계를 가지는데, 다음 이미지를 전반적으로 살펴보자. IS-A와 HAS-A의 관계 위의 그림을 보면 차량(Vehicle)은 엔진(Engine)을 부속품으로 갖고 있다. 또 다른 예로 집(Home)은 방(Room)을 가지고

Naver Blog

[파이썬 기초] 확장 및 단항 산술 연산자와 타입 변환 내장함수 오버로딩

이번엔 확장 산술 지정문 연산자 및 단항 산술 연산자와 타입 변환 내장함수 오버로딩에 대해 알아보자. 이전 포스팅인 연산자 오버로딩과 내용이 이어진다. 확장 산술 지정문 연산자 다음 표는 확장 산술 지정문 연산자(augmented arithmetic assignment operator)에 대한 메소드 목록이다. 확장 산술 지정문 연산자 메소드 연산자 __iadd__(self, other) += __isub__(self, other) -= __imul__(self, other) *= __imatmul__(self, other) @= __itruediv__(self, other) /= __ifloordiv__(self, other) //= __imod__(self, other) %= __ipow__(self, other) **= __ilshift__(self, other) <<= __irshift__(self, other) >>= __iand__(self, other) &= __ixor

Naver Blog

도시전설 - 미국의 9.11테러 괴담

예전에 무서운 스펀지라는 방송을 본 적이 있었는데 그때 9.11 테러 괴담에 관한 내용이 나왔다. 갑자기 생각나서 오랜만에 방송을 찾아보려고 하는데 몇 화였는지, 몇 년도에 방송 했는지도 기억이 안나서 그냥 인터넷에 돌아다니는 내용으로 한 번 찾아보려고 한다. 괴담 1 - Q33NY 'Q33NY'는 9.11 테러 괴담 중에서 가장 유명한 괴담이기도 하다. 사실 이 괴담을 테스트하기 위해서는 'Wingdings 폰트'가 설치되있는 텍스트 에디터나 MS Office의 워드 프로그램으로 테스트를 해야 하지만, 리눅스 민트를 기반으로 한 현재 내 PC에서는 이 폰트가 설치가 되어 있지 않은 상태다. 그래서 부득이하게 Windows XP Professional 64비트 iso 이미지 파일을 이용해서 Windows XP 운영체제를 가상머신으로 설치했다. 굳이 XP 운영체제를 고른 이유는 이 다음에 "bush hid the facts" 괴담을 테스트하기 위해서다. 해당 테스트는 XP 밖에 안되기

Naver Blog

[파이썬 기초] 비교 연산자 및 컨테이너 타입 연산자 오버로딩

이번에는 비교 연산자 오버로딩과 컨테이너 자료형(Container Types) 연산자 오버로딩에 대해 알아보자. 비교 연산자 오버로딩 다음 표는 두 개의 인스턴스 객체를 비교하여 True 혹은 False로 반환하는 비교 연산자 메소드이다. 비교 연산자 메소드 연산자 __lt__(self, other) < __le__(self, other) <= __eq__(self, other) == __ne__(self, other) != __gt__(self, other) > __ge__(self, other) >= 먄약에 __lt__( ) 메소드가 정의되어 있다면, '<' 연산자가 호출되지만 __gt__( ) 메소드가 없다면 '>' 연산자에 대해서도 __lt__( ) 메소드가 기본으로 호출된다. 이 경우에는 결과가 반전되며, __eq__( )와 __ne__( ) 메소드, 그리고 __le__( )와 __ge__( ) 메소드 사이에서도 동일한 현상이 발생된다. >>> class Vec: ... d

Naver Blog

[파이썬 기초] 해시와 불리언을 위한 특별 메소드와 속성 접근 메소드 오버로딩

이번에는 문자열 변환과 해시(Hash), 불리언 내장함수를 모방하는 특별 메소드와 속성 접근 특별 메소드를 위한 연산자 오버로딩에 대해 알아보자. 문자열 변환과 해시, 불리언 내장함수를 모방하는 특별 메소드 문자열 변환과 해시, 불리언에 대한 메소드 내장함수 __repr__(self) repr( ) __str__(self) str( ), print( ) __bytes__(self) bytes( ) __format__(self, format_spec) format( ), str.format( ) __hash__(self) hash( ) __bool__(self) bool( ) 위의 표는 문자열 변환과 해시(hash), 불리언에 대한 내장함수(built-in functions)를 모방하는 특별 메소드 목록을 나타낸다. __repr__( ) 메소드는 객체의 공식적인(official) 문자열 표현을 계산하는 repr( )에 의해 호출되며, 문자열을 직접 반환한다. __str__( ) 메소드

Naver Blog

하모니카 OS에서 리눅스 민트(linux mint) 21.1 버전 설치하기

이번에 하모니카 OS를 좀 오래 사용하면서 불편한 점을 느꼈다. 가끔 가다가 화면이 멈추기도 하고 이유도 없이 깜빡 거리기도 하는 등의 문제가 좀 있었는데 원인을 찾아보다가 그래픽카드에 문제가 있었고 내 PC에서 장착한 그래픽카드가 하모니카 OS는 드라이버 자체를 지원하지 않는 것 같다. 그래서 이번에 리눅스 민트 21.1 버전으로 거처를 옮기려고 한다. 사실 하모니카가 리눅스 민트를 기반으로 개발된 운영체제인데 업데이트 속도가 좀 많이 느리다. 패키지 충돌도 한 차례 일어났기 때문에 이번에 아예 사용 중이던 하모니카 OS를 갈아 엎어버리고 리눅스 민트로 갈아타려고 한다. 위의 이미지를 보면 알겠지만 초창기 하모니카 OS와 비슷한 이미지이다. 지금의 하모니카는 리눅스 초보자들을 배려해 plank(하단 dock)이나 기본적인 프로그램들을 이미 설치해 놓은 상태로 나온다. 그래도 리눅스 민트 또한 단점은 있는데... 하모니카에서 쓰던 카카오톡을 wine으로 다시 설치해야 한다는 점이 좀

Naver Blog

리눅스를 Mac OS의 Big Sur 버전으로 커스터마이징 하기

이번에 리눅스 민트로 새로 운영체제를 바꾸면서 좀 칙칙한 분위기를 애플의 Mac OS 중 한 버전인 Big Sur로 커스터마이징을 해보려고 한다. 진짜 Big Sur를 사용하고 싶으면 맥북이나 맥미니, 아이맥 등을 구매하면 되기야 하겠지만 사실 잔고장이나 버그 등 문제가 많은 운영체제이기도 하고 애플 제품을 그 돈 주고 구매할 메리트는 크게 못 느껴서 단순히 인터페이스만 보고 괜찮아서 바꿔보려고 한다. 이거 바꾸려고 인터넷에 발품 팔아가면서 밤새 정보 조사를 해서 꽤나 고생을 좀 했다. 커스터마이징 하는 과정과 내용이 상당히 길고 약간 복잡(?)하기 때문에 잘 따라와야 한다. 초기 설정 우선 기본만 설치된 리눅스 민트에서 [시스템 설정]을 실행한 다음 환경설정에 '창'으로 들어간다. 그럼 [제목 표시줄] 탭에서 버튼 배치 부분이 나오는데 보통 PC 운영체제는 닫기와 최대화, 최소화가 배치된 버튼이 창의 오른쪽 상단에 있다. 그런데 애플의 운영체제는 왼쪽에 있기 때문에 버튼 배치를 [

Naver Blog

대한민국의 마지막 사형수 - 김선자 연쇄 독극물 살인사건

저번 포스팅에서 대한민국 최초의 여성 연쇄 살인마인 박분례 사건에 이어서 이번에는 대한민국의 최후의 사형수인 김선자 연쇄 독극물 살인 사건에 대해서 알아보자. 프로필 이름 : 김선자(金宣子) 출생 : 1939년, 전라남도 순천시 사망 : 1997년 12월 30일, 대전광역시 유성구 대전교도소 직업 : 가정주부 죄명 : 연쇄 독극물 살인 형량 : 사형 집행 피해자 수 : 6명(사망 5명, 부상 1명) 범행기간 : 1986년 10월 ~ 1988년 8월 살인 수법 : 사이안화 칼륨(청산가리)을 이용한 독살 체포일자 : 1988년 9월 2일 김선자는 박분례에 이어 대한민국 역사상 두 번째 여성 연쇄살인범이며, 고유정과 함께 여성 흉악범의 대명사로 꼽히고 있다. 즉, 고유정이 제 2의 김선자라고.... 당시 김선자는 남편이 벌어온 생활비와 지인들에게 빌린 돈으로 카바레 출입과 도박에 모두 탕진한 상태였으며, 막대한 액수의 빚을 떠안고 있는 상태였다. 이렇게 김선자는 자신의 가족들과 채권자들의

Naver Blog

[파이썬 기초] 정적 메소드와 클래스 메소드

이번엔 정적 메소드와 클래스 메소드에 대해 알아보자. 정적 메소드(static method) 파이썬에서 정적 메소드(static method)는 메소드 정의 앞에 '@' 기호를 추가하는 데코레이터인 '@staticmethod'를 추가하여 지정할 수 있다. 인스턴스 메소드에 첫 번째 매개변수로 전달하던 self를 정적 메소드에서는 전달하지 않는 것이 특징이다. 그리고 정적 메소드는 클래스 이름 혹은 인스턴스 객체를 통하여 호출이 가능하다. >>> class A: ... value = 0 ... @staticmethod ... def incr(value = 1): # 정적 메소드 ... A.value += value ... return A.value ... >>> 정적 메소드가 추가된 클래스의 기본적인 설계 구조는 위와 같다. 다만, 첫 번째 매개변수로 인스턴스 객체를 전달하지 않기 때문에 인스턴스 객체를 따로 생성하지 않고도 메소드 호출이 바로 가능하다. >>> A.incr() 1 >

Naver Blog

대한민국 최초의 연쇄 살인마 - 박분례 보험 연쇄 살인사건

보통 이런 연쇄 살인사건에 조금 관심이 있는 사람이라면 대한민국 최초의 연쇄 살인범으로 대부분 '김대두'를 꼽곤 한다. 그리고 최초의 '여성' 연쇄 살인범으로는 김선자를 꼽기도 하는데, 이는 잘못된 정보이다. 일제강점기를 제외하고 대한민국 정부 수립 이후에는 '박분례'가 남녀 통틀어 최초의 연쇄 살인범으로 집계되어 있다. 김대두 또한 비슷한 시기에 연쇄 살인을 저지르긴 했지만 박분례 보다는 몇 달 늦게 살인을 시작했으며, 먼저 체포되면서 김대두가 최초(?)라는 오해를 불러 일으키게 된 케이스인데, 아무튼 당시 박분례 보험 연쇄 살인 사건은 많은 사람들에게 충격을 주었다. 이름 : 박분례(朴粉禮) 출생 : 1926 ~ 1983년 7월 9일, 부산직할시 부산진구 출신 보험 사기 관련 사건은 예전에는 수 많은 범죄 사건들 중 대다수의 비중을 차지할 정도로 많이 벌어졌었다. 지금은 보험금 수령 과정에서 심사가 까다로워졌기 때문에 비교적 비중이 낮은 강력범죄라고 할 수는 있지만 과거에는 내연

Naver Blog

[파이썬 기초] 연산자 오버로딩 - operator 모듈과 이항 산술연산자 오버로딩

이번에는 파이썬의 클래스 파트에서 좀 방대한 연산자 오버로딩 파트에 대해서 학습을 해 보자. 클래스에서 앞 뒤로 2개의 밑줄(__)을 갖는 특별한 이름의 메소드(special methods)를 구현하면서 내장함수(built-in functions) 혹은 연산자(operator)의 기능을 모방(emulate)하여 클래스의 인스턴스 객체에서 사용자의 의도대로 커스터마이징 할 수 있다. 이러한 특별한 메소드에 대해서는 __new__( ), __init__( ), __del__( ), __slots__( ) 를 이미 학습하였다. 여기서는 연산자 오버로딩(operator overloading)을 위한 특별 메소드에 대해서 학습을 하는데, 기타 내장함수를 모방하는 특별 메소드이다. 파이썬은 모든 연산자를 오버로딩하여 클래스 객체의 연산에 사용할 수 있으며, 연산자 오버로딩이 정의되어 있지 않은 객체에서 연산자를 사용하면 TypeError가 발생하게 된다. operator 모듈 연산자 오버로딩을

Naver Blog

국산 리눅스 2 - 한컴구름 OS를 사용해 봤다.

한컴구름 OS란? 초기 한컴구름 OS의 인터페이스 저번 포스팅의 Tmax OS(티맥스 구름)에 이어서 국산 개발 리눅스인 한컴구름 OS를 사용해 보려고 한다. 위의 GUI 인터페이스를 봐도 작업관리줄 디자인은 윈도우 10과 상당히 비슷하며, 아이콘 모양이나 누가봐도 데비안을 기반으로 한 리눅스인 것이 티가 난다. 초기에는 2015년 하모니카 OS 초기 개발을 맡은 미래창조과학부의 7개 기관을 대상으로 한 개방형 OS 시범사업 중 국방부에서 화상면회체계와 싸지방(사이버지식정보방) 2개 사업을 추진했다고 한다. 그 외에는 별도로 국가보안기술연구소의 개방형 OS 구름으로 보안 기능을 강화하는 사업도 추진되었지만 이 역시도 리눅스 민트를 기반으로 한 하모니카를 저격하기 위해 개발한 것으로 짐작된다. 그러다 하모니카 보다는 더 많은 수정을 하면서 기밀 정보 등의 유출을 통제하려는 것으로 보이는 것을 가늠하자면 이 역시도 일반인을 타겟으로 한 가정용 데스크탑 용도로 출시되지는 않은 것으로 보인

Naver Blog

아프리카가 현재까지도 가난한 이유

베네수엘라 정치와 경제 상황에 관련된 포스팅을 조사해서 작성하는데 한 가지 의문점이 더 생각났다. 과거 초록우산 어린이재단이나 유니세프, 세이브더칠드런 등지에서 월 3만원 씩 몇 달 동안 못 사는 아프리카 대륙에 기부를 한 적이 있었다. 그럼에도 아직까지 TV 공익 광고에는 아프리카가 여전히 고통받고 있는 모습을 보여주고 있었다. 그러면서 계속 나 스스로 의문점이 생기기 시작했다. "구호단체 이 새끼들이 뒤에서 기부금을 가로채나...?" 라는 생각이 계속 들려고 할 즈음에 아프리카가 왜 아직도 가난할 수 밖에 없는지 그 이유에 대해서 찾아봤다. 아프리카가 현재까지도 가난한 이유 지구상에서 아프리카는 '검은 대륙'이라고 불리고 있다. 60년 동안 해외 각국에서 1조가 넘는 금액의 원조를 지원했음에도 불구하고, 아프리카는 우리 돈으로 약 2200원으로 하루를 간신히 살아가는 절대적 빈곤 상황에 처해져 있다. 그렇기 때문에 먹지도 못하는 사람들과 각종 질병으로 인한 사망자가 지금 글을 작

Naver Blog

[파이썬 기초] __init__(), __del__(), __new__() 메소드 재정의

이번엔 최상위 클래스인 object 클래스의 전용 메소드인 __init__( ), __del__( ), __new__( ) 메소드를 재정의해서 사용해 보자. object.__new__(cls[, ...]) object.__init__(self[, ...]) object.__del__(self) 일본의 한 파이썬 학습 사이트에서 최상위 클래인 object 클래스는 메소드인 __init__( ), __del__( ), __new__( ) 메소드를 재정의(overriding) 하여 사용할 수 있다. 이때는 정적 메소드(static method)인 __new__( )에 의해 객체가 생성되며, __init__( ) 메소드가 호출되어 객체의 초기화가 이루어진다. 그리고 인스턴스에 대한 참조가 더 이상 존재하지 않을 때, 객체는 메모리상에서 파괴되기 바로 직전에 __del__( ) 메소드가 호출되는데 대부분은 인스턴스 객체를 초기화하는 __init__( ) 메소드만 재정의하여 사용한다. 파이썬은

Naver Blog

국산 리눅스 1 - Tmax OS(티맥스 구름) 리눅스를 사용해 봤다

이번엔 북한 리눅스인 '붉은별(red star)'와 러시아의 군사용 리눅스인 '아스트라 리눅스(Astra Linux)'에 이어서 한국에서 자체된 리눅스 배포판인 Tmax OS(티맥스 구름)을 사용해 보려고 한다. 사실 한국에서 정부 지원으로 자체 개발한 리눅스 배포판인 '하모니카 OS'(현재 내가 사용 중인 운영체제) 밖에 없는 줄 알았는데 여러가지 몇 개가 더 있어서 차례차례 사용해 보려고 한다. Tmax OS(티맥스 구름)란? Tmax OS는 티맥스 A&C에서 개발 및 출시한 개인용 컴퓨터 운영체제로 이 운영체제의 전신은 놀랍게도 되게 옛날인 2009년, 윈도우를 저격하고자 만든 자체개발 운영체제를 티맥스 윈도우라는 이름으로 출시했다가 데모 시연회에서 운영체제가 터지는 등 여러 논란으로 시끄럽게 했던 그 운영체제가 전신이다. 지금봐도 상당히 쪽팔리고 내 얼굴이 화끈거리는 참사의 현장이다. 저런 대참사를 겪은 뒤, 이번에 2019년 8월 15일, 티맥스 OS가 개인용 버전으로 출시

Naver Blog

[파이썬 기초] 클래스 속성와 인스턴스 속성 접근하기

이전 포스팅에서도 언급 했듯이, 파이썬은 클래스 속성(class attribute)과 인스턴스 속성(instance attribute)을 구분한다. 클래스 속성은 클래스로부터 생성된 모든 인스턴스에 의해 공유되며, 인스턴스 속성은 해당 인스턴스에만 사용된다. 또한, 파이썬은 인터프리터 실행 시간에 동적(dynamic)으로 속성을 추가 혹은 삭제할 수 있다. 클래스 데이터 속성을 '클래스 변수(class variable)'라고 하며, 인스턴스 데이터 속성은 '인스턴스 변수(instance variable)' 혹은 '멤버 변수(member variable)'라고 부른다. 속성 데이터 접근 클래스 데이터 속성의 종류와 특징 속성은 클래스 이름 혹은 인스턴스 객체와 점(.)에 의해 접근(access : get/read, set/write)한다. 이때 접근은 두 가지 사용 목적이 있는데, 하나는 이미 존재하는 속성 이름에 바인딩된 값을 얻어(get)와서 사용하는 경우와 속성에 새로운 값을 설

Naver Blog

전 세계 최대 산유국이었던 베네수엘라가 한 순간에 몰락한 이유

오늘은 정치와 경제적인 이야기를 좀 해 보려고 한다. 사실 그 동안 궁금했던 이야기이기도 했고 한때 남미에서는 가장 잘 사는 국가 중 하나로 인식하고 있었던 베네수엘라의 경제 기반이 무너져 몰락했다는 뉴스가 몇 달 전부터 계속 들려왔다. 그래서 베네수엘라는 왜 세계 최대 석유 부국에서 거지국가로 전락했는지 개인적으로 정치나 경제학 공부도 할 겸 알아보기로 했다. 평소에 정치나 경제에 크게 관심을 가지고 살지는 않았지만 이참에 관심이나 좀 가져보자. 과거의 베네수엘라는 전 세계에서 석유를 매장량이 가장 풍부한 산유국 1위였으나, 현재는 전 세계에서 가장 위험한 나라 중 하나가 된 국가라는 역설적인 타이틀을 가지고 있다. 보통 사람들에게 잘 알려진 석유 최대 산유국이라고 하면 사우디아라비아나 쿠웨이트를 포함한 중동국가이지만 세계 원유 매장량 1위는 베네수엘라였다. 베네수엘라가 무너져 내리는 과정 과거 독립적인 국가로서 베네수엘라는 주로 군벌에 의한 독재로 통치되어 왔다. 그리고 1918

Naver Blog

[파이썬 기초] 클래스 정의와 객체 생성

지난 포스팅에서 객체지향 이론과 철학에 대해 대충 알아봤다. 그럼 그 이론을 기반으로 해서 이제 본격적으로 클래스 파트로 넘어가 보자. 여기서는 클래스 정의 및 객체를 생성해 보려고 한다. 파이썬에서 클래스와 객체의 관계에 대해 잠시 짚고 넘어가 보자. 클래스와 객체의 관계 객체와 클래스, 인스턴스의 관계도 파이썬은 순수한 객체지향 프로그래밍언어(OOP/Object-Oriented Programming language)이다. 파이썬은 변수를 포함하여 상수, 메소드, 속성 등을 전부가 클래스로 구현되어 있으며, 여기서는 객체와 클래스, 인스턴스의 관계에 대해 잠시 알아보자. 객체는(object)는 우리가 사는 현실세계에 존재하는 실체화된 물건 등을 의미한다. 이것을 처리하는 대상이며, 이러한 객체를 추상화(abstraction)라는 과정을 통하여 클래스(class)로 정의할 수 있다. 자동차를 예로 들어보자. 현실세계에는 자동차라는 하나의 객체가 있다. 그리고 이러한 자동차의 특성을

Naver Blog

[파이썬 기초] async def 기반의 코루틴과 asyncio 모듈의 코루틴

이번에는 async def 기반의 코루틴과 asyncio 모듈을 사용한 코루틴에 대해 학습해 보자. async def 기반의 코루틴 PEP-0492 정책 async def 명령은 PEP(Python Enhancement Proposal) 0492 정책에 의해 파이썬 3.5 버전 이상부터 코루틴 함수를 정의할 수 있다. 코루틴 함수와 await( ) 함수 async def <함수 이름> (<매개변수_리스트>): <문장 몸체> await <대기가능_객체> 함수의 몸체인 <문장 몸체>에 await, async for, async with 키워드가 사용된다. async def에 의한 코루틴 함수에서 yield를 사용하면 SyntaxError 예외가 발생한다. 그러나 코루틴은 반복을 직접 다룰 수는 없다. 즉, 내장함수 next( )는 사용이 불가능하다는 뜻이다. 따라서 coroutine.send(None)로 이터레이터를 진행시킨다. async def에 의해 정의된 코루틴은 '단일스레드(si

Naver Blog

신의 계시로 운영체제를 개발한 정신질환 개발자 테리 데이비스 이야기

미국의 4chan 사이트를 돌아다니다가 아주 흥미로운 이야기를 발견했다. 바로 신의 계시를 받아 templeos라는 운영체제를 개발한 정신질환 개발자인 테리 데이비스에 관한 이야기를 해 보려고 한다. 테리 데이비스 생애와 사망 이름 : 테리 A. 데이비스(Terrence Andrew Davie) 출생 : 1969년 12월 15일, 미국 위스콘신주 웨스트앨리스 사망 : 2018년 8월 11일(향년 48세), 미국 오리건 주 댈러스 학력 : 미국 애리조나 주립대학 컴퓨터 공학 학사 및 전기 공학 석사 직업 : 컴퓨터 프로그래머, 개인방송 블로거 경력 : TicketMaster(1990 ~ 1996) 코모도어 64 컴퓨터 그는 어렸을 적 Apple II를 가지고 있었으며, 코모도어 64 컴퓨터를 이용해서 어셈블리어를 배우기도 했다. 그 후에 미국의 애리조나 주립대학교에서 전기공학 석사 학위를 취득하여 TicketMaster에 프로그래머로 취직했다. 거기서 그는 VAX 운영체제의 개발 업무

Naver Blog

[파이썬 기초] 객체지향의 이론과 철학

파이썬의 함수파트를 끝내고 이제 클래스(class) 파트로 넘어가려고 한다. 본격적으로 클래스를 학습하기 전에 우선 간단하게 객체지향의 기본적인 이론과 철학에 대해 짚고 넘어가자. 객체지향(Object-Oriented)이란? 객체지향(Object-Oriented)은 프로그래밍 언어에서 프로그램을 설계하는 방법론의 일종으로, 명령형 프로그래밍에 속한다. 단순히 프로그램을 데이터와 처리 방법으로 나누는 것이 아닌, 프로그램을 수 많은 '객체(object)'라는 기본 단위로 나누고 이들의 상호작용으로 서술하는 방식을 의미한다. 보통 사전적인 의미의 객체(客體)는 주체와는 반대되는 개념으로, 객관과 거의 비슷한 뜻으로 쓰인다. 프로그래밍 개념을 제외하면 일반적인 대상이나 사상 자체를 의미하며, 주체와 연관됨으로서 이 주체의 행위가 지향하는 것을 의미하고 이를 프로그래밍에 접목시키면 '객체지향 프로그래밍(Obejct-Oriented Programming)'이 된다. 더 좁은 개념에서 인식론적

Naver Blog

대한민국 인터넷의 아버지 - 전길남 박사 이야기

파이썬을 공부하다가 잠깐 집중력을 잃고 다른 짓을 하다가 한국에는 어떻게 인터넷이 보급되었는지 정보 조사를 하게 되었다. 그러다가 대한민국에 최초로 인터넷 연결에 성공하여 대한민국 인터넷의 아버지라고 불리는 한 인물에 대해 조사를 시작했다. 이름 : 전길남(全吉男, Kilnam Chon) 출생 : 1943년 1월 3일, 일본 제국 오사카부 오사카시 국적 : 대한민국 직업 : 컴퓨터 과학자 분야 : 전산과학 및 정보통신학 학력 : 오사카대학 전기공학 학사 - UCLA 컴퓨터 공학 경력 : 미국 록웰 인터내셔널(Rockwell International) - NASA 제트추진연구소(Jet Propulsion Laboratory) - 한국전자기술연구소 - KAIST 전산학과 명예 교수 - 일본 게이오 대학 특임교수 훈장 : 체육훈장 기린장 및 국민훈장 동백장 지금의 MZ세대에게 인터넷 없이 단 일주일만 살아보라고 하면 어떻게 될까? 아마도 숨 쉬듯 이루어지던 소통들이 단절되면서 답답함을 느

Naver Blog

[파이썬 기초] 함수 데코레이터(Function decorator)

이번에는 파이썬의 함수 데코레이터에 대해 알아보자. 이전의 일급함수와 클로저랑에 비해서는 학습 난이도가 조금 오른 것 같은 느낌을 많이 받는다. 함수 데코레이터(Function decorator) 파이썬의 함수 데코레이터 실행 흐름과 구조 파이썬에서 '데코레이터(decorator)'는 다른 함수를 반환하는 함수의 일종으로, 함수를 래핑(wrapping)할 때 주로 사용된다. 래핑 함수는 어떤 일을 시작하기 전/후에 처리할 일을 수행하는데 예를 들자면, 자원(resource)의 할당 및 회수 혹은 조건 체크 등과 같은 일을 래핑 함수가 수행하게 된다. 파이썬에서 데코레이터는 함수 이름 앞에 '@' 기호를 사용하여 지정할 수 있다. 데코레이터 함수는 사전에 미리 정의되어 있어야 하며, 여기서 데코레이터의 기능은 간단하게 일급함수와 함수 클로저를 이용하면 된다. >>> def entryExit(func): ... def wrapper(): ... print('사전장식', func.__na

Naver Blog

북한판 리눅스 - 붉은별(Red star) OS를 사용해 봤다

집먼지가 꽤 쌓여 있어서 오랜만에 방 청소를 했다. 책상 정리를 하다가 못 보던 USB가 보였는데 iso 이미지 파일 2개가 들어 있었다. 다운로드 폴더로 빼 놨는데 알고보니 이거... 북한에서 자체적으로 개발한 리눅스 기반의 운영체제인 '붉은별 OS'였다. 그냥 설치하면 왠지 큰일날 것 같아서 가상머신을 이용해서 호기심에 한 번 사용해 보려고 한다. iso 파일은 총 두 개인데, 하나는 2.0 버전이고 하나는 3.0 버전이다. 둘 다 사용해 보자! 그 전에 붉은별 OS가 뭔지에 대해서 한 번 살펴보자. 붉은별(red star OS)란? '붉은별 OS'는 조선콤퓨터쎈터에서 개발한 북한판 컴퓨터 운영체제를 일컫는다. 여기서 '붉은별'은 공산주의와 사회주의를 상징하는 별 모양의 기호인데, 다섯 개의 각은 노동자의 다섯 손가락과 다섯 개의 대륙을 상징한다. 즉, 공산주의 그 자체를 일컫는 말인데 북한도 공산주의인가...? 그냥 김정은 일당 독재체제 아니었나...? 아무튼 잡소리 집어치우고

Naver Blog

[파이썬 기초] 제너레이터(Generator) 함수와 수식

이번에는 제너레이터 함수와 수식에 대해 알아보자. 제너레이터(Generator)란? 기본적으로 제너레이터가 뭔지에 대해 짚고 넘어가자. 제너레이터(generator)는 기본적으로 반복이 가능한 객체(iterable object)를 베이스로 하며, 반복이 가능한 반복자를 이용하여 연속적인 데이터 값을 차례대로 생성할 수 있다. 여기서 제너레이터를 생성하는 방법에는 제너레이터 함수와 제너레이터 수식이 있다. 컴퓨터 프로그램의 기본적인 구조 컴퓨터 프로그램은 복잡한 작업(tasks)을 단위 모듈 프로그램으로 나눠서 일을 처리하는데, 이러한 단위 모듈을 전문 용어로는 '서브루틴(subroutine)'이라고 하며, 메인 함수가 각 서브루틴을 호출하고, 서브루틴 사이를 조정하면서 작업을 수행하게 된다. 서브투린은 진입점이 한 곳 밖에 존재하지 않아서 return 명령에 의해 종료하거나 마지막 명령까지 실행한 다음 최초로 호출한 곳으로 되돌아온다. 다음 포스팅에서 다룰 예정이지만 '코루틴(cor

Naver Blog

러시아 군사용 리눅스 - 아스트라 리눅스(Astra Linux)를 사용해 봤다

이번에는 러시아의 RusBITech에서 제작한 데비안 계열의 리눅스 운영체제인 '아스트라 리눅스(Astra Linux)'를 사용해 보려고 한다. 저번 북한판 리눅스인 '붉은별(Red star)'을 사용해 봤는데 기능도 기능이지만 공산주의와 주체사상을 포함한 온갖 정치적 선전물들이 눈에 띄게 내포되어 있어서 상당히 보기 불편했고 볼 것도 없어서 접었다. 그래도 이건 좀 개인용 데스크탑으로도 사용가능한 데비안 계열의 운영체제이기 때문에 자신의 취향에 맞게 약간의 커스터마이징만 거치면 사용할 수도 있겠다는 생각이 든다. 러시아 국방 통제 센터에서 사용되고 있는 아스트라 리눅스 아무튼 아스트라 리눅스는 2015년에 러시아 정부에서 마이크로소프트의 윈도우(Windows) 의존도를 줄이기 위해 러시아군 및 로사톰, 러시아 철도 공사 등 정부기관과 공공기관에 배포하기 위해 개발되었다. 그리고 중국의 화웨이와 협력하면서 중국에 있는 Tianwan 원자력발전소 제어 운영체제로도 수출되었다. 중국에

Naver Blog

[파이썬 기초] 제너레이터 기반의 코루틴과 파이프라인

이번에는 제너레이터 기반의 코루틴과 파이프라인 기법에 의해서 처리되는 코루틴에 대해 알아보자. 보통 제너레이터 함수를 사용하여 코루틴을 구현할 수는 있지만 이는 제한된 형태의 코루틴이다. 여기서는 제너레이터 함수에서 지정문 오른쪽에 yield 명령을 사용하여 실행 도중에 외부에서 값을 전달 받는 코드를 사용하여 코루틴에 대해 알아보려고 한다. 외부로부터 입력 받는 코루틴 RFC ISO 참조 - 파이썬의 코루틴 구조 외부로부터 입력 받는 코루틴은 제너레이터 객체를 생성한 다음 메소드를 이용해서 코루틴을 다룬다. >>> def echoMsg(): ... print('start echo message') ... while True: ... value = (yield) ... print('msg :', value) ... >>> 위와 같은 제너레이터 함수를 우선 생성한다. 그리고 제너레이터 객체를 생성해서 코루틴을 사용해 보자. >>> gen = echoMsg() >>> gen <gener

Naver Blog

그때 그 사건 - 2008년 이호성 일가족 살인사건에 대해 알아보자

스포츠토토를 끊은 이후에 오랜만에 KBO 야구를 봤다.(지금은 일본야구 NPB를 시청중) KBO를 안 본 사이에 롯데는 4위를 하고 있었고 한화는 하위권이긴 하지만 오늘 경기를 이겼다. 무엇보다도 놀라운 점은 이 글을 작성하는 시점에서 삼성라이온즈가 꽤나 큰 게임차로 꼴찌를 하고 있었다... (삼성왕조가 어쩌다...) 그리고 기아도 KT한테 이겼는데 기아 경기를 보다가 갑자기 한 사건이 생각났다. 前 프로야구 선수 이호성 이름 : 이호성(李昊星) 출생 : 1967년 7월 17일, 전라남도 순천시 사망 : 2008년 3월 10일, 서울특별시 서초구 반포동 본관 : 전주 이씨 신체 : 182cm/80kg, A형 포지션 : 외야수 프로 입단 : 1990년 해태 타이거즈 1차 지명 종교 : 개신교 범죄 : 대량살인 나는 이호성의 전성기 시절 플레이를 보지는 못 하고 기아타이거즈에서 잠깐 활동하던 그 시절만 생각난다. 그런데 그가 전성기이던 시절에는 엄청 대단한 선수였다는 걸 아버지에게 얘기

Naver Blog

전설의 데뷔무대 이후 가요계에서 사라진 가수 오리(Ori)

지난 포스팅에서 음악방송 무대 중 성기를 노출시켜 물의를 빚었던 카우치 사건에 대해서 조사를 했었다. 같은 음악방송 무대라 그런지 카우치 사건 조사 중에 갑자기 한 무대가 생각이 났었다. 때는 2009년 쯤으로 기억된다. 당시 고등학교에 갓 입학했던 나는 강지영과 지금은 고인이 된 구하라가 영입된 카라의 열렬한 팬이었다. 당시 팬카페인 '카밀리아'에도 가입을 하는 등 굉장히 열성적으로 덕질을 했었는데 그녀들의 무대를 보기 위해 뮤직뱅크를 본 적이 있었다. 그때 카라의 무대가 프리티걸이었는지 허니였는지 자세히 기억은 안 나지만 그 날 만큼은 카라 무대보다 훨씬 내 기억 속에 강렬하게 각인 되었던 무대 하나가 있었다. 인터넷 커뮤니티 등지에서는 '전설의 가수'라고 불리기 까지 했으며, 그 당시 좀 과장되게 말해서 '전 국민'을 충격의 도가니로 몰아 넣었던 무대라고 보면 될 듯... 프로필 활동명 : 오리(Ori) 한국이름 : 백지현 일본이름 : 田中さおり(타나카 사오리) 출생 : 199

Naver Blog

[파이썬 기초] 파이썬의 일급함수와 함수 클로저(Closure)

이번에는 파이썬에서 일급함수와 함수 클로저(Closure)에 대해 다뤄보자. 사실 함수 클로저 중에서 '클로저'의 영어 철자가 'closer'인 줄 알았는데 'closure'라고 한다. 어차피 closer나 closure나 의미는 비슷하기 때문에 굳이 상관은 없을 것 같지만 그래도 공식적인 단어는 'closure'라고 한다. 일급함수(first-class function) 파이썬 함수의 구조와 타입(type) 샘플 파이썬의 함수 같은 경우에는 변수의 객체로 바인딩이 가능하며, 매개변수에 함수를 전달할 수 있다. 그리고 return 값으로 함수를 반환할 수 있는데 프로그래밍 언어에서는 이를 '일급함수'라고 하며, 다른 말로는 '일급시민(first-classcitizens)'으로 취급한다고 말하기도 한다. >>> def greeting(name): ... return 'Hi, ' + name ... >>> say = greeting >>> say('Kim') 'Hi, Kim' >>> g

Naver Blog

[리눅스 활용] vim 에디터 단축키 및 명령어 정리

이번엔 사건/사고나 이야기가 아닌 리눅스의 vim 에디터 단축키와 명령어를 정리해 보려고 한다. 사실 리눅스 초보자들에게는 좀 사용하기 어려운 에디터이지만 이게 한 번 적응하고 나니까 다른 에디터보다 훨씬 편리하게 사용할 수 있을 것 같다는 느낌이 들었다. 지금은 i, a, dd, wq 등 자주 사용하는 단축키 위주로만 알고 있지만 언제든지 필요할 때 써먹을 수 있을 것 같아서 메모하는 용도로 작성을 해 보려고 한다. 사실 vim 같은 경우에는 하모니카 OS 기준으로 풀패키지 버전을 다운로드 받아서 설치하면 기본적으로 사용할 수 있으며, 다른 리눅스나 유닉스 운영체제에도 기본적으로 적용되어 있는 에디터이다. 하지만 lite 버전이나 몇몇 리눅스 배포판에는 vim 대신 vi가 내장되어 있는데 vi 같은 경우에는 호환성이나 문서 작성 중 이상한 버그가 발생하기도 하고 한글 입력이 깨지기도 하는 문제가 있기 때문에 vim을 쓸 것을 추천한다. vim이 내장되어 있지 않은 경우에는 터미널에

Naver Blog

대한민국 역대 최악의 방송 사고 - 카우치 사건

과거 2005년 7월 30일, 토요일이었다. 당시 초등학교 6학년 학생이었던 나는 학교에 갔었다. 이 날은 오전 수업만 하고 학교가 일찍 끝나서 집으로 오자마자 투니버스를 보고 있었다. 참고로 옛날에는 토요일에도 학교를 갔었다. 둘째 주 토요일이랑 넷째 주가 놀토였나... 자세히 기억이 안 나네 아무튼 투니버스를 잘 보고 있었는데 당시 고등학교 1학년이었던 누나가 와서 동방신기 오빠야들(당시에는 5인조 였음) 나온다고 MBC 음악캠프(현재 음악중심)를 틀어라고 한다. 그래서 할 수 없이 음악캠프를 같이 보고 있었는데 나오라는 동방신기는 안나오고 왠 미친놈들이 나와서 정신 없는 노래를 부르다가 중간에 바지와 팬티를 벗고 방방 뛰고 있었다. 나는 그 당시에 충격을 받아서 잠시 벙쪄 있었는데 누나는 뭐가 그렇게 웃긴지 옆에서 박장대소를 하고 난리가 났었다. 그리고 그 방송이 끝나자 네이버 등 포털 사이트는 난리가 났었는데 그 시절을 다시 회상하고 추억하고자 내 기준으로는 대한민국 역대 최

Naver Blog

[파이썬 기초] 람다(lambda) 함수와 재귀 함수

이번엔 람다(lambda) 함수 및 map( ), filter( ), zip( ) 등의 파이썬 내장 함수와 함께 재귀함수에 대해 알아보자. 람다(lambda) 함수 람다(lambda) 함수는 사용자 정의 함수와는 다르게 이름을 갖지 않고 한 줄의 코드로 구성되는 인라인(inline) 함수이다. lambda [<매개변수 리스트>] : <수식> <매개변수 리스트>는 생략이 가능하며, 여기서 <수식>은 함수의 반환값(return)을 의미한다. 람다 함수에서 인자를 매개변수에 전달하는 방식은 일반적인 사용자 정의 함수와 동일하다. >>> f = lambda x : x*x >>> f(10) 100 >>> f(20) 400 >>> f(50) 2500 위의 람다 함수를 사용자 정의 함수로 풀면 다음과 같다. >>> def f(x): ... return x*x ... >>> f(10) 100 >>> f(20) 400 >>> f(50) 2500 즉, 람다 함수는 공식적인 이름은 없지만 이를 저장하는

Naver Blog

[파이썬 기초] 함수 정의 및 호출

드디어 함수 파트로 넘어왔다. 사실 이전 포스팅에서도 함수를 사용하긴 했지만 전부다 파이썬에 내장되어 있는 함수나 객체 타입의 내장함수들 뿐이었는데 여기서는 함수를 직접 만들어서 호출해 보려고 한다. 함수 정의 및 함수 객체 속성 여기서는 사용자 정의 함수(User-defined Function)의 정의와 함수 호출, 변수의 유효 범위(scope), 인자와 전달 방식, lambda 함수 등에 대해 알아보자. 파이썬에서 함수라고 하면 다음과 같은 그림으로 정의(definition)와 호출(call)의 관계를 표현할 수 있다. 함수 정의와 호출의 관계 오른쪽의 함수 형태대로 파이썬에서 함수 정의는 'def' 키워드를 사용하여 정의할 수 있다. 그 외에 위치 인자나 키워드 인자의 경우에는 나중에 알아보자. def <함수 이름> (<매개변수_리스트>) : # 함수 정의 <문장 몸체> [return <수식_리스트>] <매개변수_리스트>의 각 변수는 함수의 지역변수(local variable)

Naver Blog

[파이썬 기초] 위치 인자와 키워드 인자

이번에는 위치 인자와 키워드 인자에 대해 자세하게 알아보자. 이전 포스팅에서도 언급했지만 함수를 호출할 때는 인자를 함수 정의에 있는 매개변수로 전달하는 방법이 있는데 이때 나열되는 인자의 순서인 위치를 이용하는 위치 인자와 매개변수의 이름을 이용하여 전달하는 키워드 인자 전달 방식이 있다. 위치 인자와 키워드 인자 함수 정의 부분의 <매개변수_리스트>에서 매개변수 이름만 있으면 위치 인자 혹은 키워드 인자를 전달 받을 수 있다. 매개변수 = value 형식으로 매개변수의 디폴트(default) 값을 설정할 수 있는데 즉, 인자를 생략하여 호출했을 시 디폴트로 value 값을 갖게 된다. 디폴트 값이 설정된 매개변수도 함수 호출에서 인자가 있다면 해당 인자값이 전달되며, 디폴트 매개변수 뒤에는 디폴트 매개변수가 아닌 매개변수가 위치할 수도 있다. >>> def polyFunc(x, y, z): ... print('x = {0}, y = {1}, z = {2}'.format(x, y,

Naver Blog

일본인을 구하다 희생된 한국의 의인 이수현의 감동적인 이야기

대체로 역사적으로 보면 한국과 일본의 관계는 좋을 수가 없다. 나도 드라마 야인시대를 보고 자란 인물로서 어린 시절에는 정치인들의 반일 선동에 휩쓸려 반일 성향을 가진 인물이었다. (지금은 아니지만...) 그러나 예전에 한 기사를 읽게 되었는데 의인 이수현 님에 관한 이야기였다. 너무 감동적인 그의 이야기에 조금씩 마음을 바꾸면서 나이를 먹고 이제는 일본의 음악을 듣고 애니나 드라마를 시청하는 문화를 즐기는 등 성향을 완전히 바꾸게 되었다. 정치인들의 선동도 빗겨간 의인 이수현 님 이야기를 해 보려고 한다. 이름 : 이수현(李秀賢) 출생 : 1974년 7월 13일, 경상남도 울산시 우정동(현 울산광역시 중구 우정동) 사망 : 2001년 1월 26일(향년 26세) 일본 도쿄도 신주쿠구 햐쿠닌초 1초메 10-15 신오오쿠보역 본관 : 경주 이씨 학력 : 고려대학교 서창캠퍼스 무역학과 취미 : MTB, 기타, 스킨다이빙, 수영, 농구, 테니스 의인 이수현은 울산광역시 출신으로 부산광역시에

Naver Blog

도시전설 - 동요 '우리집에 왜 왔니' 충격적인 괴담

※ 과몰입 하지 마시고 재미로 읽으셔야 정신 건강에 덜 해롭습니다. 스마트폰이 없었던 어린 시절, 우리는 밖에서 친구들과 몸을 쓰는 놀이들을 하며 놀았다. 그 놀이들 중에는 미취학 아동들이 즐겨 했었던 '우리집에 왜 왔니' 놀이가 있었다. 동요 '우리집에 왜 왔니'에 맞춰서 두 팀으로 갈라서 마주본 다음 노래를 한 소절씩 번갈아 부른다. 노래를 부르는 쪽은 앞으로 나아가고, 상대팀은 뒤로 물러난다. 그리고 가위바위보를 통해 이기면 상대 진영 중 한 명을 아군 진영으로 끌어들이는 단순한 놀이인데 동요 '우리집에 왜 왔니'의 기원이 일본에서 유래했다는 말이 있다. 동요의 정확한 기원에 대해 밝혀진 바는 없지만 일본의 놀이 중 하나인 '하나이치몬메(花一匁)'가 한국에 변형되어 전파되었다는 설이 가장 유력하며, 2019년에는 해당 놀이가 일제강점기의 위안부 인신매매와 관련되어 있다는 학계 주장으로 인해 교육부가 조사에 착수하기도 했다. 흥겨운 노래와 함께 어린시절 우리들의 추억에 자리매김

Naver Blog

[파이썬 기초] 네임스페이스와 global/nonlocal 문법

이번엔 사용자 정의 함수에서 네임스페이스와 코드 블록, 유효범위와 global/nonlocal 문법에 대해서 알아보자. 네임스페이스(namespace) 코드 블록 조각들을 불러오는 모습 파이썬 프로그램은 각각의 코드 블록(code blocks)으로 구성되어 있다. 코드 블록은 모듈(module)과 함수 몸체, 클래스 정의(class definition) 등으로 하나의 실행 가능판 파이썬 프로그램 조각을 의미한다. 인터프리터 모드에서 입력한 명령, 파이썬 프로그램 파일 (*.py), eval( ), exec( ) 함수의 인자로 전달되는 문자열 객체 또한 코드 블록의 일종으로 취급된다. 네임스페이스의 유효 범위(scope) 네임스페이스(namespace)는 이름(name)이 바인딩 된 상태의 영역을 나타낸다. 여기서 이름은 변수 이름이나 함수 이름, 모듈 이름, 클래스 이름 등이 모두 포함된다. 네임스페이스는 이름과 바인딩 된 객체(object)의 모임인 사전(dict)들을 의미한다.

Naver Blog

[파이썬 기초] 예외 처리 - raise와 assert 문법

이번에는 raise와 assert 문법에 대해 알아보자. raise와 assert는 try~except~finally와 다르게 예외를 처리하는 문법이 아닌, 의도적으로 예외를 발생시키는 경우에 사용할 수 있다. 사실 파이썬에 내장되어 있는 예외 클래스를 제외하고도 프로그래머가 특정 조건 수식에 raise를 걸어 예외를 발생시킬 수도 있다. raise 문법 대충 위와 같이 사용할 수 있다. raise 문법은 명시적으로 예외를 발생시키는데, 다른 조건 없이 raise만 사용하는 경우에는 현재 영역에서 최근에 발생된 예외를 다시 발생시키게 된다. 최근에 발생한 예외가 없는 경우에는 기본값으로 RuntimeError를 발생시켜 프로그램을 종료시키며, 형식은 다음과 같다. - raise - raise <조건 수식 1> - raise <조건 수식 1> from <조건 수식 2> raise만 단독으로 사용될 경우에는 최근에 발생한 예외를 다시 발생(reraise) 시키며, 최근에 발생한 예외가

Naver Blog

의문사한 일본의 AV배우 - 모모이 노조미 사건

지금으로 부터 1년 전 쯤, 23살의 AV 여배우가 숲에서 나체로 숨진 채 발견되는 사건이 있었다. 당시 희생당한 여배우는 아라노 리나인데 이 사건의 범인은 잡혔다. 그러나 과거에 2002년 쯤, 다른 일본의 AV 배우인 모모이 노조미(桃井望)가 누군가에게 살해 당하는 의문사 사건이 있었는데 이 사건의 범인은 아직까지 잡히지도 않고 특정되지도 않는 희대의 의문사 사건이다. 오늘은 이 사건에 대해 알아보려고 한다. 이름 : 모모이 노조미(桃井望) 본명 : 와타나베 요시미(渡辺芳美) 출신 : 1978년 9월 23일(공식 프로필은 1980년 9월 23일), 일본 나가노현 이나(伊那)시 사망 : 2002년 10월 12일(당시 24세) 신체 : 148cm, 40kg / B86(F컵)-W56-H85(cm) / A형 AV 활동 기간 : 2001년 ~ 2002년 모모이 노조미의 본명은 와타나베 요시미로 AV 활동을 하던 당시의 공식 프로필은 1980년 9월 23일 생이다. 그녀는 고등학교를 졸업

Naver Blog

20초 만에 사라진 아이 - 마츠오카 신야 군 실종사건

1980년대 중 후반, 경제의 황금기를 누리던 일본은 화려하게 살아가는 것 같았지만 이 시기에 여고생 콘크리트 살인사건이 발생하기도 하는 등 사회 내적으로는 상당히 혼란하고 어수선한 시기를 보내고 있었다. 그 중에 상당히 기이한 실종사건이 하나 발생하게 되는데... 1989년 3월 7일, 일본 시코쿠 지방의 도쿠시마현 사다미츠정(貞光町)에서 일어난 전대미문 어린이 실종사건으로, 당시 4세의 마츠오카 신야 군이 아버지의 시야에서 잠깐 멀어진 20초 사이에 실종되어 34년이 지난 2023년 현재까지도 행방이 묘연한 사건이 발생했다. 사건 전개 사건의 발단은 신야 군의 외할머니가 사망하면서 시작된다. 신야는 가족과 함께 이바라키현(茨城県)의 우시쿠시(牛久市)에 살고 있었는데, 신야의 외할머니 즉, 신야의 어머니인 마츠오카 케이코의 친정 어머니가 사망하자 온 가족들이 도쿠시마현 코마츠시마시에 있는 장례식에 참석했다. 그리고 이들은 코마츠시마시에서 차로 1시간 정도 걸리는 사다미츠정에 있는

Naver Blog

[파이썬 기초] 예외 처리 - try ~ except ~ finally 구절

이번엔 반복문을 지나서 예외 처리에 대해 알아보자. 예외 처리 try ~ except ~finally 구절의 흐름도 파이썬에서 프로그램을 실행 했을 때 코드의 문법 오류(Syntax Error)가 없을 경우에만 코드가 실행된다. 그러나 다양한 원인에 의해서 실행 중에 비정상적인 예외(Exception)가 발생하여 프로그램이 종료될 수 있다. 파이썬에서 비정상적인 예외라고 하면 수식에서 없는 변수를 사용할 경우에는 NameError 예외, 타입이 맞지 않는 연산을 할 경우에는 TypeError 예외, 숫자를 0으로 나눌 경우에는 ZeroDivisionError 예외, 시퀀스 타입에서 범위를 벗어나는 인덱스를 사용할 경우에 발생하는 IndexError 예외 등이 있다. 파이썬은 이러한 예외가 발생했을 때, try 문법을 이용하여 적절히 예외 처리(Exception Handling)를 할 수 있도록 기능을 한다. 그리고 다음 포스팅에서 학습할 raise와 assert는 인위적으로 특정 구

Naver Blog

원조 N번방 사건 - 일본의 스너프 필름 Bakky 사건에 대해 알아보자

과거 2019년, 조주빈을 비롯한 여러 사회의 부적응자들이 대한민국에 희대의 성범죄 사건을 저질렀던 것이 수면위로 떠오르게 되었다. 당시 대한민국 사회는 난리가 났었는데 이 사건을 보니 과거 일본에서 행해졌던 AV를 빙자한 희대의 성범죄 사건이 터졌던 것이 생각났다. 때는 과거 2005년 쯤으로 생각된다. 그때 당시에는 버디버디 메신저를 통해 친구들과 여러 대화를 하게 되었는데 난 그때 성룡과 이연걸이 나오는 홍콩 영화와 무협 영화에 빠져 있었다. 어떻게 무료로 볼 수 있는 방법을 찾다가 그때 단과 학원에 같이 다녔던 친구가 버디버디 메신저로 당시에 핫했던 '뉴 폴리스스토리(2004)' 영화를 공짜로 볼 수 있는 링크를 보내줬다. 난 아무 의심 없이 그 링크를 클릭해서 들어갔는데 나오라는 성룡 영화는 나오지도 않고 일본 야동이 나왔다. 내가 원하던 영화가 아니라서 실망했는데 그 당시 호기심으로는 "이게 무슨 영화지...?" 하고 잠깐 봤다. 뭐 야동이라는 건 알고는 있었지만 밝은 분

Naver Blog

[파이썬 기초] 반복문 - while 루프

이번에는 for 루프에 이어서 또 다른 반복문 중 하나인 while 루프에 대해 알아보자. for 루프와 while 루프의 차이점은 반복의 횟수가 정해져 있냐, 없냐에 따라 다르게 쓰인다. while 루프 while 루프의 흐름도 while <조건 수식> : <문장 몸체 1> [else : <문장 몸체 2>] # 생략 가능 while 루프는 <조건 수식>이 참(True)으로 도는 동안, <문장 몸체 1>을 반복적으로 실행한다. <조건 수식>을 평가하여 결과가 거짓(False)로 나와야 반복을 종료할 수 있다. 그리고 for 루프와 마찬가지로 else 구절을 사용할 수 있으며, 만약 else가 존재한다면 <문장 몸체 2>를 실행하고 종료한다. else는 생략이 가능하다. 여기까지는 for 루프와 동일하지만 차이점은 반복의 횟수가 정해져 있는 for 루프와는 달리, while 루프는 프로그램이 실행되는 동안 딱히 반복의 횟수가 정해져 있지 않은 상황에서 사용할 수 있다는 점이 차이점이다

Naver Blog

[파이썬 기초] 반복문 - 중첩 for 루프와 break, continue 문법

이번에는 중첩된 for 루프와 반복문에서만 사용할 수 있는 특수장치인 break, continue에 대해서 알아보자. 참고로 break와 continue는 반복문이 들어간 프로그램 실행 흐름에 영향을 끼치는 일종의 특수 장치(?)인 셈인데 이를 실행 했을 시 프로그램에 어떤 영향을 끼치는 지 아래에서 살펴보자. 중첩된 for 루프 중첩된 for 루프는 간단하게 반복문 안에 또 다른 반복문을 중첩(nested loop)하여 사용할 수 있으며, 대략적인 프로그램 실행의 흐름도는 다음과 같다. 중첩된 for 루프의 흐름도 대표적으로 중첩 for 루프의 경우에는 다음과 같이 구구단을 출력하는데 사용할 수 있다. # 중첩 for 루프를 사용하여 구구단 1~9단까지 출력하기 for dan in range(1, 10): for gugu in range(1, 10): print(' {0}x{1}={2:>3},'.format(dan, gugu, dan*gugu), end = '') print() #

Naver Blog

목격자로 나와 뉴스에 인터뷰 했던 초등학생 유괴 살인범 김점덕 사건

때는 2012년 쯤 내가 대학교 다니던 시절로 기억된다. 이때 나는 뉴스 하나를 보게 되었다. 한 어린이가 실종되는 사건이 발생했는데 그때 한 남자가 목격자로 나와서 해당 어린이를 봤다는 인터뷰를 하게 되었는데 여기서 충격적인 반전이 드러나게 된다. 김점덕 초등생 유괴 살인 사건 사건 당시 실종된 한아름 양 실종 전단지 2012년 7월 6일 오전, 경상남도 통영시 산양읍 신전리 중촌마을에서 등교하던 초등학교 4학년 학생이었던 한아름(당시 10세) 양이 실종되는 사건이 발생했다. 실종되고 아름 양은 밤 10시까지 집으로 귀가하지 않자, 부모는 경찰에 실종 신고를 했다. 그리고 아름 양은 실종된 지 일주일 째 되던 날인 7월 22일 오전 11시경 집에서 10여 km 떨어진 인평동의 한 야산에서 암매장된 싸늘한 시신으로 발견되었다. 경찰은 7월 18일 오후, 아름 양의 집에서 버스정류장으로 가는 도로변 하수구를 수색하다 아름 양의 휴대폰을 발견했다. 분석 결과 아름 양의 휴대전화는 실종

Naver Blog

30명을 살해하여 인육을 먹은 러시아 식인부부 사건

이번에는 러시아로 발을 돌려보자. 러시아에서는 지금까지와는 상상도 할 수 없는 희대의 미친 사건이 하나 있었다. 나는 되게 예전에 회사에 출근하기 전 아침 뉴스로 이 소식을 처음 접했었다. 그냥 간단하게 아침 먹으면서 대충 봤던 뉴스였는데 상당히 충격적인 사건으로 기억을 해서 다시 찾아봤다. ※ 경고(WARNING) - 심약자 혹은 비위가 약한 사람은 글을 읽지 말고 '뒤로가기'를 누르시길 바랍니다. 모자이크를 하긴 했지만 다소 충격적인 사진들이 나옵니다. 식인범 부부의 신상 이름 : 드미트리 박셰예프(Dmitry Barsheev, 남자) / 나탈리아 박셰예바(Natalia Baksheeva, 여자) 출생 : 1982년 1월 25일(남자, 2020년 2월 16일 당뇨병으로 사망) / 1975년 1월 28일(여자) 출신지 : 러시아, 크라스노다르 RSFSR 체포 : 2017년 9월 24일 별명 : 크라스노다르 식인종, 러시아 연방 식인부부, 식인 패밀리 사건의 배경 해당 사건과 무관한

Naver Blog

중국의 후원하이 총기난사 보복 살인사건에 대해 알아보자

분명 그냥 잡다하게 세상 공부를 하려는 목적으로 만든 게시판이지만 이상하게 사건/사고만 다루는 것 같다. 거기다 일본에 관련된 내용들이 포스팅에 좀 자주 나왔었는데 이전의 북한판 연쇄 살인범 박명식에 이어서 이번에는 중국에 좀 충격적이면서 흥미로운 사건이 있어서 직접 파봤다. 사실 이 사건은 오래 전에 한 유튜버가 다뤘던 것을 기억하고 있었는데 영상이 지워졌는지 보이지도 않았고 유튜버 이름이나 살인범의 이름이 기억나지가 않아서 사건에 대한 정보를 찾는데 좀 애먹었다. 유튜버의 이름은 끝내 기억을 못했지만, 대신 사건의 범인 이름을 기억하고 그 이름을 토대로 정보 조사를 시작했다. 이름 : 후원하이(胡文海) 출생 : 1954년 11월 11일, 중화인민공화국 산시성 위츠구, 다위커우촌 사망 : 2002년 1월 25일, 중화인민공화국 총살형 직업 : 농부, 탄광 경영자 범죄혐의 : 14명(남성 8명, 여성 6명) 총살 및 3명 중상 중국의 범죄자 후원하이는 마을 농촌 간부들의 부패에 부당

Naver Blog

[파이썬 기초] 반복문 - for 루프

조건 제어문인 if에 이어서 이번에는 프로그래밍 언어에서는 빠질 수 없는 반복문인 for 루프에 대해 알아보자. for 루프 프로그램이 언어에서 for 루프는 프로그래머가 지정한 특정 횟수만큼 데이터를 반복할 때 사용하는 문법이다. 파이썬에서 for 루프는 반복이 가능한(iterable) 객체의 데이터(item)에 대해 반복 처리를 하기 위해 사용한다. 여기서 for 루프를 이용하여 반복이 가능한 객체는 시퀀스(str, bytes, bytearray, tuple, list, range) 객체와 집합(set), 매핑(dict), 열거 타입(enumerate), 제너레이터(generator) 함수 등의 이터레이터(iterator, 반복자)를 갖는 객체여야 한다. 심플한 for 루프의 흐름도 대략적인 for 루프의 기본 형식은 다음과 같다. for <목표 리스트> in <수식 리스트> : <문장 몸체 1> [else : <문장 몸체 2>] # 생략 가능 for 루프의 <수식 리스트>는 반

Naver Blog

[파이썬 기초] 조건 제어문 - 이중 분기 if~else 구절

이전의 단일 분기 if 문에 이어서 이번에는 이중 분기 if~else 구절에 대해서 알아보자. 이중 분기 if~else 구절 이중 분기 if~else 구절 흐름도 if <조건 수식> : <문장 몸체 1> # <조건 수식>이 True라면 <문장 몸체 1> 실행 else : <문장 몸체 2> # <조건 수식>이 False라면 <문장 몸체 2> 실행 이중 분기 if~else 구절은 기존의 단일 분기 if에서 else가 추가된 구조를 가지고 있으며, <조건 수식>이 참(True)이라면 <문장 몸체 1>을 실행하며, 거짓(False)이라면 <문장 몸체 2>를 실행한다. 그리고 <문장 몸체 1>과 <문장 몸체 2>는 콜론(:)과 같은 라인에 각 코드를 세미콜론으로 구분하여 나열하거나, 콜론(:) 다음 라인에 하나 이상의 코드를 들여쓰기하여 나열할 수 있다. 세미콜론을 사용했을 때 >>> a = 10; b = 20 >>> if a < b: x = a + b; y = a * b ... else:

Naver Blog

전쟁 상황이 궁금해 이라크에 갔다가 사망한 코다 쇼세이 피살 사건

사실상 이전 김선일 피살 사건 포스팅과 관련되어 이어서 이야기가 진행된다고 봐도 될 듯 하다. 과거 2004년, 김선일 피살 사건이 대한민국 사회에 엄청난 후폭풍을 몰고왔던 그 당시, 충격이 채 가시기도 전에 일본에서 한 청년이 이라크에서 납치되는 사건이 발생하게 된다. 그러나 그가 납치되어 피살되었을 당시 일본 여론의 반응은 우리나라와 완전 극과 극이었는데... 이름 : 코다 쇼세이(香田 証生) 출생 : 1979년 11월 29일, 일본 후쿠오카 현 노가타시 사망 : 2004년 10월 29일, 이라크 바그다드(향년 24세) 종교 : 기독교(개신교로 일본기독교단교파) 코다 쇼세이는 일본의 평범한 기독교 집안 출신이다. 이전 김선일 관련 포스팅 마지막에도 언급 했었지만 일본에서는 기독교 신자의 비율이 상당히 낮은 편이라 기독교 집안만 해도 특별하게 여기는 경향이 있기도 하지만, 과거의 역사 때문인지 아직도 가톨릭이나 기독교 신자들을 박해하는 인식도 많다고 한다. 아무튼 그는 일본 규슈의

Naver Blog

[파이썬 기초] 조건 제어문 - 다중 분기 if~elif~else 구절

이번에는 조건 제어문의 마지막인 다중 분기 if~elif~else 구절에 대해서 알아보자. 사실상 if~else 구절의 구조와 흐름을 완벽하게 이해했다면 이거 이해하는 건 크게 어렵지 않다. 다중 분기 if~elif~else 구절 다중 분기 if~elif~else 흐름도 다중 분기 if 문은 이전의 이중 분기 구절인 if~else의 중간에 'elif'가 추가된 구조를 가지고 있다. if <조건 수식 1> : <문장 몸체 1> # <조건 수식1> == True라면 <문장 몸체 1> 실행 elif <조건 수식 2> : <문장 몸체 2> # <조건 수식2> == True라면 <문장 몸체 2> 실행 ... elif <조건 수식 n> : <문장 몸체 n> # <조건 수식 n> == True라면 <문장 몸체 n> 실행 else : <문장 몸체 n + 1> # <조건 수식1, 2, 3>이 모두 False 일때 실행 위의 형식대로 만약 <조건 수식 1>이 참(True)이라면, <문장 몸체 1>을

Naver Blog

[파이썬 기초] 조건 제어문 - 단일 분기 if 구절

이번 파트부터는 프로그램의 흐름을 변경할 수 있는 if, for, while, try 등의 조건 제어문에 대해서 학습한다. 다른 파트보다 좀 골때리긴 하지만 조금만 두뇌를 쓰면 금방 이해할 수 있다. 첫 번째는 if 문인데 이는 수식의 결과에 따라 True/False 플래그 객체로 분기하는 문법이며, for 문과 while은 데이터를 반복적으로 처리하는 방식이다. 그리고 try는 프로그램 실행 중 예상치 못한 오류가 발생했을 때 예외를 처리한다. 단일 분기 if 문 단일 분기 if 문의 흐름도 if 문은 수식의 결과가 True 혹은 False 플래그에 따라 실행할 문장의 몸체(suite)를 다르게 선택할 수 있다. if 문은 여기서 학습할 '단일 분기', 그리고 '이중 분기', '다중 분기' 구조를 가지고 있는데 if 문의 수식은 불리언 연산(or, and, not), 비교 연산(<, <=, >=, >=, ==, !=, is, is not) 등에 의한 조건 수식일 수 있으며, 일반

Naver Blog

그때 그 사건 - 2004년 김선일 피살 사건에 대해 알아보자

빅뱅 이전 추억의 메이플스토리 2004년, 나에게는 지금과는 달리 아무 근심 걱정도 없이 순수하던 시절이 있었다. 초등학교 5학년이던 그 시절에는 참 재밌던 추억이 많았다. 친구들과 놀기도 하고 집에서 메이플스토리를 하면서 게임도 마음껏 하던 시절이 있었는데 그때 당시 대한민국 사회에 충격을 줬던 희대의 사건이 터졌다. 당시에 김선일 피살 사건이 터지기 전에 미국인이 이라크 무장단체에 납치되어서 참수를 당하는 동영상을 우연찮은 기회로 보게 되었다. 어린 마음에 친구들과 같이 그 동영상을 보게 되었는데 그 당시의 충격이 20년이 다 되어가는 지금도 여전히 트라우마로 한 켠에 자리잡게 되었다. 이라크에서 납치된 미국인 '닉 버그(Nick Berg)'의 참수 직전 장면 그때 당시에는 주작이라는 말도 많고 미국의 자작극이라는 음모론이 많았는데 그 충격이 채 가시기전에 이번엔 한국인이 납치되었다는 소식을 접하고 얼마 지나지 않아 그가 피살당하는 영상을 '또' 보게 되었다. 지금과 다르게 그때

Naver Blog

절대 만나면 안되는 성향의 여자 - 완전체에 대해 알아보자

들어가기 전 - 서론 현재 나는 회사에 다니고 있는 직장인이다. 간혹 출근할 때 상당히 보기 싫은 사람이 있는데 나와 같이 일하는 직장 동료도 아니고 선배도 아니다. 그 사람은 1층 로비에서 사람들에게 인사를 하고 외부인에게 안내를 하는 로비 안내원인 '여자'이다. 우리 회사 건물의 경우 외부인이 출입을 하려면 사전에 미리 출입등록이 되어 있어야 출입할 수 있을 만큼 보안에 철저하게 신경을 쓰는 회사인데 내가 일하는 곳에는 한 달에 한 번 외부 업체에서 장비의 정기점검을 방문한다. 그런데 그 외부인에 대한 출입이 등록되어 있는지 물어보려면 이 여자에게 확인을 받아야 하는데 그때 외부 업체가 방문을 하면 내가 인솔자로 들어간다. 여기서 내 휴대폰 번호가 이 여자에게 노출된다. 그 번호를 보고 이 여자가 나한테 개인적인 일로 문자를 하는 일이 잦아졌다. 그리고 외부 업체의 사람이 와서 출입 등록을 확인 받고 올라와서도 나한테 "1층의 안내데스크 여자 너무 싸가지가 없다... 옛날에 있던

Naver Blog

[파이썬 기초] 키와 값으로 이루어진 매핑형 dict(사전) 타입

이전 포스팅의 집합 타입인 set, frozenset 타입에 이어서 이번에는 키(key)와 값(value) 쌍으로 이루어진 매핑형인 사전(dict) 타입에 대해 알아보자. dict 사전 타입 파이썬의 dict 타입은 dict 클래스로 구현되어 있다. dict는 집합과 마찬가지로 중괄호 '{ }' 안에 콤마로 구분된 key:value 쌍으로 이루어진 데이터 값 변경이 가능한 매핑(mapping) 타입이다. 여기서 key(키)는 int, str 등 해싱(hashing)이 가능한 타입을 의미하며, 데이터 값 중복을 허용하지 않는다. 그리고 value는 list, set 등으로 제약 없이 모든 타입이 올 수 있으며, dict 타입은 집합과 마찬가지로 순서가 존재하지 않기 때문에 인덱싱이나 슬라이싱 같은 시퀀스 타입의 연산은 허용하지 않는다. class dict(**kwargs) / class dict(mapping, **kwarg) / class dict(iterable, **kwargs)

Naver Blog

일본 AV 배우로 구성된 K-pop(?) 걸그룹 - 허니팝콘 이야기

때는 지금으로 부터 3년 전, 2020년 겨울 쯤으로 생각된다. 당시에 나는 업무적인 일 때문에 서울로 출장을 갔었다. 그리고 일이 끝나고 하루 숙박비 55,000원 짜리 모텔에서 하루 숙박을 했는데 잠들기 전에 TV를 봤다. 당시에 0번인가 1번을 틀었더니 '플레이보이'라는 채널이 나왔다. 성인채널이었는데 야동(?)이 끝나고 광고를 하는 시간대에 한 뮤직비디오가 흘러나왔다. 걸그룹 뮤직비디오 였는데 노래는 한국어였다. 근데 자세히보니 센터에 있는 여자가 눈에 띄었다. "어디서 많이 본 여자인데..." 하고 곰곰히 생각하다가 머리에 전구가 번쩍 켜지더니 그녀였다. 휴지끈 길이가 좀 되거나 av를 좀 봤다하는 사람이라면 모를 수가 없는 그녀가 갑자기 뮤직비디오에 나와서 그것도 센터에서 춤을 추면서 노래를 부르고 있었다. "한국에 와서 걸그룹 데뷔 했었나...?" 하고 생각해서 그 정보를 찾아보려고 한다. 허니팝콘의 우여곡절 데뷔 전... 이름 : 허니팝콘(HONEY POPCORN) 데

Naver Blog

[파이썬 기초] 연산자 우선순위(Operator Precedence)

이번에는 본격적으로 조건 제어문과 반복문 파트에 들어가기 전에 짧게 '연산자 우선순위'에 대해서 알아보고 가자. 연산자 우선순위(Operator Precedence) 출처 : 코딩의 시작, TCP School 보통 연산자 우선순위라고 하면 우선적으로 계산을 해야 하는 우선순위를 의미한다. 우선순위는 소괄호 '( )'를 사용하여 변경할 수 있는데 우선 다음의 표를 살펴보자. 연산자 설명 (expressions...), [expressions...], {key:value...}, {expressions...} 괄호(바인딩, tuple), list, dictionary, set x[index], x[index:index], x(arguments...), x.attribute 인덱싱(subscription), 슬라이싱, 함수 호출, 속성 참조 ** 거듭제곱 +x, -x, ~x 단항 연산 부호 양수, 음수, 비트별 NOT *, @, /, //, % 곱셈, 나눗셈, 나머지 +, - 이항 연산

Naver Blog

북한의 엽기적인 장기적출 연쇄 살인범 박명식 사건

현재는 21세기, 2023년이다. 그러나 북한은 여전히 굶어 죽거나 보위원에게 폭행 당하여 맞아 죽는 사건들이 비일비재하다. 그리고 그 곳은 그런 방식으로만 사람들이 죽어나가지는 않는다. 북한도 사람 사는 곳이기 때문에 원한이나 범죄, 연쇄살인 같은 끔찍한 사건이 일어나기도 한다. 이 이야기는 과거로 거슬러 올라가 1990년, 함경남도에는 한국의 영화보다 더 끔찍한 연쇄살인 사건이 일어나면서 주민들을 공포에 떨게 한 사건이 있었다. 1991년 10월 중순, 함경남도 신포시 재판소에서 살인사건에 대한 재판이 진행되었다. 피고인 박명식은 40대 남자로 총 12명의 생명을 앗아간 연쇄 살인범으로 총살형을 선고 받았다. 박명식은 1990년 4월부터 6개월 동안 무려 12회나 살인을 저질렀다. 범행 대상도 대부분 14살부터 17살 까지의 청소년을 대상으로 삼았으며, 범행 방법 또한 복부를 난자한 다음 장기를 적출하는 방식으로 상당히 엽기적이었다. 이 사건은 범행 수법도 잔인했지만, 수사에 나

Naver Blog

[파이썬 기초] 집합 데이터를 다루는 set/frozen set 타입

이번에는 파이썬에서 집합 객체의 데이터를 다루는 set과 frozen set에 대해 알아보자. set/frozen set 타입 집합 타입은 순서가 존재하지 않고 데이터의 값이 중복되지 않는 컬렉션(unordered collection) 타입이다. 따라서 순서가 존재하지 않기 때문에 시퀀스 타입에서 사용할 수 있는 연산 및 메소드는 사용할 수 없다. 즉, 인덱싱과 슬라이싱은 사용할 수 없다. 보통 수학적인 집합은 위와 같은 이미지를 떠올리는데 파이썬에서의 집합도 위와 같은 논리이다. 그리고 set과 frozen set의 차이점은 예상한대로 데이터 값 변경 가능과 불가능 여부에 따라 따진다. set은 데이터 값 변경이 가능하며, frozen set은 데이터 값 변경이 불가능하다. set에서 사용 가능한 메소드는 주로 add( )와 remove( )를 사용하며, 기본 형식은 다음과 같다. class set([iterable]) / class frozenset([iterable]) 중괄호

Naver Blog

전설의 경인대첩 - 삼일절 한일 사이버 전쟁 이야기

때는 2010년 3월 1일이었다. 내가 고등학교 2학년 학생이던 시절인데 당시에 나는 웃대(웃긴대학) 커뮤니티를 즐겨하던 유저였다. 그때 당시 모종의 사건으로 인해 반일 감정이 엄청나게 확산되었다. 그래서 웃대 유저들을 비롯한 디시인사이드 갤러리들과 협공하여 일본의 커뮤니티 사이트를 같이 털었던 기억이 난다. 우리는 이걸 '경인대첩'이라고 부르는데 그 이유는 2010년 '경인년에 일어난 사이버 대첩'이기 때문이다. 물론 나는 단순히 심심해서 같이 참전을 했었지만 새벽감성 충만하게 갑자기 옛날 추억이 떠오르기도 하고 이 사건이 생각나기도 해서 이번에 자세하게 이 사건을 조사해 봤다. 사건의 전개 시간은 2010년 2월 18일로 거슬러 올라간다. 당시에 러시아에서 유학 중이었던 한국인이 집단 폭행 당해 숨진 사건이 있었다. 이 소식이 일본의 2ch(現 5ch) 커뮤니티로 들어 갔다. ※ 2ch, 현재는 5ch로 이름이 바뀌었지만 이 사이트는 일본의 대형 커뮤니티 사이트이다. 우리나라로

Naver Blog

현재 영국이 4개의 나라로 구성되어 있는 이유

이번엔 역사적인 이야기를 해 보려고 한다. 사실 예전부터 상당히 궁금했었다. 과거 런던 올림픽 당시에는 '영국'이라는 한 국가가 팀을 이뤄서 축구 경기를 했었다. 내 기억상으로는 과거 한국이 8강전에서 영국을 만나 페널티킥을 성공하면서 4강으로 갔던 기억이 났고 준결승에서 브라질에 탈락하여 일본과 동메달 결정전에서 이겨 올림픽 축구 역사상 처음으로 메달을 땄던지라 기억이 선명하게 난다. 런던 올림픽 당시에는 영국이라는 원팀으로 구성되어 국가대표에 나왔는데 이번 카타르 월드컵 때는 잉글랜드와 웨일스가 따로 나와서 경기를 한 것을 보고 문득 이런 생각이 났다. 이들이 4개의 나라로 찢어진 이유를 이해하려면 영국의 역사부터 이해를 해야 한다. 켈트족(Celts)은 붉거나 금발에 땋은 머리를 하며, 날개가 달린 투구를 썼다. 과거 브리튼 섬에는 기원전 8세기 무렵부터 중앙 유럽 어딘가에서 건너온 '켈트족(Celts)'이 이주해서 살고 있었다. 이들의 특징은 붉은 눈과 머리카락에 사각턱, 그

1 2 3 4 5 6