예외처리... 쉽게 설명하자면 에러가 떴을 때 어떻게 할 지 코딩하는거라고 보면 된다. 예를 들어서 웹서핑을 하다 보면 보이는 이런게 있는데 대충 이런거. 404 뜨면 404 페이지를 띄우시오 이런 느낌이라고 보면 된다. 당연한 얘기지만 자바스크립트에도 예외처리가 있다. 나중에 함 다뤄보겠음. 나무위키의 정의에 따르면 예외처리는 '예외 처리(Exception Handling) 혹은 오류 처리(Trouble Shooting)란 실행 흐름상 오류가 발생했을 때 오류를 그대로 실행시키지 않고 오류에 대응하는 방법을 제시하는 개념이나 하드웨어 구조를 의미한다. 일반적으로 프로그래밍에서 프로그램이 실행 중 특정 문제가 발생했을 때 다른 처리 방식으로 흐름을 옮기는 개념으로 사용한다.'라고 한다. 예를 들어서 계산..
https://koreanraichu.tistory.com/254 백준 2745번 풀이 문제 https://www.acmicpc.net/problem/2745 2745번: 진법 변환 B진법 수 N이 주어진다. 이 수를 10진법으로 바꿔 출력하는 프로그램을 작성하시오. 10진법을 넘어가는 진법은 숫자로 표시할 수 없는 자리가 있 koreanraichu.tistory.com 여기서 잠깐 언급했던 그거 맞다. 그것까지 주저리주저리 넣었다간 대참사 터져서 따로 뺐다. 참고로 기본 원리 역시 저기 서술되어있으므로 여기서는 생략. a = input() cipher = len(a) # 자릿수가 영어로 cipher였다니 a = a[::-1] dec_number = 0 for i in range(cipher): dec_..
아니 나 급 생각난건데 얘가 코딩한걸 보니까 변수명이 my_list 막 이렇더라고... 그래서 궁금해졌음. 과연 변수명을 지정해서 코딩할 수 있는가? 또 서버오류가 반기는거 아니냐 일단 걍 리스트를 만들어보자. 전에는 my_list였는데? 아무튼 그럼 변수명을 내가 지정해주자. 변수명은 one_to_ten으로 할거다. 사실 여기에는 숨겨진 주문이 하나 더 있는데... 다들 알겠지만, 언어가 파이썬이 아니라 자바스크립트다. 리스트 이름을 지정한 변수명으로 하는 것도 무난하게 된다. 그런데... 자바스크립트 출력 방식이 console.log만 있는 게 아니란말이지... alert로 띄우게 할 건데, alert라고 직접적으로는 얘기를 안 할거다. 사실 이거 말고 HTML 요소의 내용을 바꾸는 방법도 있긴 함...
https://koreanraichu.tistory.com/226 강해져서 돌아온 ChatGPT에게 코딩을 시켜보자 아니 자기가 강해져서 돌아왔대잖아요... 일단 이번에 시켜볼 것은 매우 간단한 코딩들... 뭐 import 할 수는 있겠지만 패키지 설치를 요하는 건 아닌, 그런 것들을 시켜볼거다. 여담이지만 오늘 제 koreanraichu.tistory.com 1편은 여기로 모시겠습니다 고객님. 저녁에는 좀 되는듯... 아까 서버 문제있었나? 근데 지금도 네트워크 에러가 간간이 일어나는게 얘네 서버실에 커피 엎은 것 같음. (아까 시키려던거) 입력받은 문자열 출력하기 input_string = input("문자열을 입력하세요: ") print("입력한 문자열은", input_string, "입니다.") ..
아니 자기가 강해져서 돌아왔대잖아요... 일단 이번에 시켜볼 것은 매우 간단한 코딩들... 뭐 import 할 수는 있겠지만 패키지 설치를 요하는 건 아닌, 그런 것들을 시켜볼거다. 여담이지만 오늘 제일 많이 본 것은... 강해져서 돌아왔다며!!! Hello, World! 출력하기 print("Hello, World!") 프로그래밍 책에서도 첫빠따로 나오는 헬로월드다. 따옴표는 ""도 되고 ''도 되는데 아무튼 저 코드 자체는 잘 됐음. 일차원 배열 만들기 반복문을 사용하지 않고 a = [1,2,3,4,5] 이런 식으로 직접 할당하는 배열 말하는거다. my_list = [i for i in range(1, 6)] print(my_list) 오 고급기술... 원래 의도했던 건 a = [1,2,3,4,5]였..
참고로 60갑자가 뭔지 궁금하면 달력을 보자. 올해는 임인년이라 인월 인일 인시에 사인검 하나 나온다. (인년 인월 인일 인시 해서 사인이라 사인검이다) 60갑자는 천간 10개와 지지 12개로 이루어지는데... 어? 뭐임? 하나 할인해요? ㄴㄴ 10과 12의 최소공배수가 60임다. 천간: 갑을병정무기경신임계 지지: 자축인묘진사오미신유술해 이렇게 된다. 뒤에 있는 지지가 여러분의 띠이기도 하다. 내가 태어나는 해에도 당연히 갑자가 있고 이게 60년마다 한번씩 돌아오기 때문에 환갑 = 61세(만 60세)에 치른다. 또한 지지가 12개이기때문에 띠동갑은 12살이다. cheongan = ['갑','을','병','정','무','기','경','신','임','계'] * 12 gigi = ['자','축','인','묘'..
예전에 익스트림 CRUD에 나왔던 그거 맞다. 대신 익스트림 CRUD에 비해 입력받는 항목도 적고, 형식검사도 한 가지 부분에 대해서만 진행하면 되기때문에 코드가 비교적 간소하다. 입력인자 중 공백 여부를 체크할 것은 1. 시퀀스 2. 시퀀스 이름 3. 시퀀스 정보 이고, 형식을 체크할 것은 시퀀스 하나뿐이다. DNA는 다들 아시다시피 A, T, G, C로 구성되어 있고 DNA 시퀀스에도 당연히 A, T, G, C만 들어간다. 대소문자 입력을 감안해도 atgcATGC 이렇게 여덟개다. 어? 제한효소 인식 시퀀스에는 W나 N같은 것도 있잖아요! 그건 DNA 시퀀스가 문제가 아니라 그 제한효소가 인식하는 염기가 두 개 이상이라는 소리다. 예를 들어서 GGWCC라는 인식 시퀀스를 가지는 제한효소가 있다면, 이..
FASTA, Genbank파일을 처리할때와 달리 ipynb일때부터 직접 입력하는 시퀀스 정보는 수기로 같이 받았다. 추가가 늦었을 뿐이지... 입력란 만들면서 제일 고생했던 건 CSS였음... 망할 그리드... ㅡㅡ 아무튼. 추가한 순서는 1. HTML 2. CSS(여기서 좀 고생함) 3. JS 4. app.py JS나 Python파일은 크게 수정할 건 없고 Ajax로 주고받는 것만 추가하면 된다. checked_finder.forEach(function (i) { if (checked_finder[0].checked == true) { textarea[2].disabled = false; sequence_name.disabled = false; sequence_desc.disabled = false s..
파일 관련 기능이 다 빠졌습니다. 아니 쓰는게 노가다여 아주. 둘 다 이식 하긴 했는데 다른데서 개고생함… ㅋㅋㅋㅋㅋ 그래요 개고생이 끼어야 코딩이지… 한번에 되면 그게 이상한거지… Cutter 그... 왜 Searcher에서 라디오버튼 선택하면 값 전송하는 건 다들 아실거고... 이걸 Cutter에도 적용해야 한다. 물론 Finder에도 적용할거다. 이게 왜 필요하냐면 입력 수단이 라디오버튼이기 때문. 그리고 라디오버튼에 각각 딸려오는 요소가 있어서, 연결된 라디오버튼이 선택되지 않았을 때 비활성화도 시켜줘야 한다. 이거 근데 Finder 가면서 소스 갈아엎음. ㅇㅇ function activate() { const checked_input = document.querySelectorAll('#typi..
들어가기 전에 중요한 게 하나 있다. Cutter와 Finder도 내일 이식하긴 할건데, 내일 이식하는 부분에서 FASTA/Genbank 파일 올리는거랑 결과 저장 기능은 빠진다. 그래서 원본 코드에 있던 with 어쩌고를 일단 작성 없이 서버로 보내서 텍스트 에리어에서 출력하는 걸 일차적으로 진행하고 저장-업로드 순으로 할 예정. FASTA/Genbank는 JS로 파일 받아서 파이썬으로 넘겨서 열 생각인데 그거 관련해서 로직 처리가 좀 필요하고(뼈대를 보면 라디오 버튼이다) 반대로 텍스트 파일은 파이썬에서 만들어서 JS로 넘길 생각이다. 텍스트 파일은 만들어준 거 받아서 버튼 누르면 다운로드 되게 하면 끝임. 대공사 전에... 일단 공사 전인 Searcher의 뼈대를 보자. 원래 코드에서 입력으로 받던..
아, RE는 Restriction enzyme이다. 기본뼈대 app.py from flask import Flask,render_template import pandas as pd import re from datetime import datetime from argparse import FileType import tkinter from tkinter import filedialog from Bio import SeqIO import os import platform app = Flask(__name__) @app.route('/') def hello_world(): # put application's code here return render_template('index.html') if __name..
Entrez쪽 뼈대 만든거랑 버튼 얘기 있으니까 기둘려보시오 Entrez with wordcloud 뼈대 이 뼈대가 완전한 건 아닌게 글꼴 선택란이 없음.. 지금 생각중인건 어비 스윗체/둘기마요/나눔고딕정도... 아무튼 Entrez with wordcloud 뼈대도 만들었음. 출력부는 별 차이 없고, 얘는 입력 인자가 검색어랑 논문 갯수뿐이라 입력란이 간소하다. 지금은 논문 개수 입력하는 란이 없는데 그건 나중에 만들면 되고… Sample text 버튼 Text with wordcloud는 찍먹이나 해보자 하는 분들을 위한 샘플 텍스트를 제공하고 있다. 한글 2 영어 2 생각중인데 영어 하나 제보좀 해주세요… 샘플 텍스트(윤동주-별 헤는 밤) 샘플 텍스트(이육사-청포도) 샘플 텍스트 3 샘플 텍스트 4 ..