Programming && WEB && APP

  • Python

    Python – [VSCode] No Python interpreter is selected 해결

    문제 Python 개발을 하던 중 실행시 갑자기 권한 거부 에러가 발생하고 VSCode 리부팅시 아래와 같이 Python interpreter를 찾지 못하는 현상을 발견하게 됩니다 원인 실행 파일 손상에 의해 발생되는 현상입니다 아래 이미지를 보시면 python.exe 파일의 용량이 0KB로 나오는걸 알 수 있습니다 해결 방법 가상 환경 이용시 지정 파이썬 버전의 가상 환경을 재구성합니다 Python – 가상환경이란? (venv, pyenv) 가상 환경이 아닌 경우 공식 사이트에서 설치 파일을 받아 재설치를 진행합니다 Python 공식 사이트 – Download

  • Python

    Python – pytest 패키지 관련 정리 (유닛테스트 , TDD)

    유닛테스트와 TDD 유닛테스트란? 하나의 모듈을 기준으로 독립적으로 진행되는 가장 작은 단위의 테스트 TDD란? 테스트가 주도하는 개발 항상 실패하는 테스트를 먼저 작성 (RED) 테스트가 통과하는 프로덕션 코드를 작성 (GREEN) 테스트가 통과하면 프로덕션 코드를 리펙토링 패키지 설치 pytest fixture pytest가 테스트를 진행하면서 공통적으로 이용할 수 있는 자원 데코레이터를 사용하여 정의 scope (범위) default – function Higher-scoped fixtures are executed first (상위 범위가 먼저 실행되게 하려면 fixture 범위[scope] 설정) lower-scoped fixtures : such as function or class higher-scopes fixtures: such as session conftest.py Test시 fixture 를 이곳에서 초기 설정 pytest 실행시 함께 실행 파일을 분리할 때 fixture들은 conftest 파일로 정리하는 것이 좋습니다 configs.py pytest 실행 시 테스트 환경으로 어플리케이션에 설정해야할 환경 변수 TESTING : 테스트 환경 여부…

  • Python

    Python – 예외 처리(except)와 가정 설정문 (assert)

    예외 처리 프로그램 내의 예기치 못한 오류가 발생 시 프로그래머가 예외 발생을 대처하기 위해 작성하는 코드 예외 처리 사용 예외 처리 생성 예외 처리 강제 (raise) 가정 설명법 (assert) 예외 처리와 비슷, 조건에 대해 bool 값을 받아 참일 경우 통과, 그렇지 않을 경우 AssertionError와 함께 프로그래머가 작성한 메세지를 출력하는 형식

  • HTML, CSS

    HTML – Table 태그 사용법

    table 태그 tr – 테이블 내의 열 단위 태그 td – 테이블 내의 행 단위 태그 th – 테이블 내의 행 단위 태그 (font-weight : bold 옵션을 기본으로 가짐 – 보통 header 또는 footer에 사용) header content 특별한 옵션은 없지만 각 영역을 그룹화 할 때 용이 반드시 하나 이상의 tr 태그를 포함 종류 – thead, tbody, tfoot colgroup – 각 행 별로 그룹화하여 옵션을 부여할 때 사용할 수 있습니다. colspan – 행 병합 rowspan – 열 병합 사용 예시

  • HTML, CSS

    CSS – border Option

    Require Option border-width, border-color, border-style 필수 선언 옵션 위 3개의 옵션은 선언 시 반드시 필요합니다.아래와 같이 개별 선언하는 방법이 있고 border 옵션을 통해 일괄 선언하는 방법이 있습니다. 선언 코드 Option (border) 선언 코드 Syntax – <line-width> || <line-style> || <color> border-top border-bottom border-left border-right Option (border-style) 선언 코드 solid – 선 dashed – 긴 점선 dotted – 점선 double – 두 줄 표시 groove top, left 라인은 바깥에 음영을 주고 bottom, right 라인은 안쪽에 음영을 줘서 선에 움푹 패인 효과를 주게 됩니다 ridge top, left 라인은 안쪽에 음영을 주고 bottom, right 라인은 바깥에 음영을 줘서 선에 볼록한 효과를 주게 됩니다 inset – 안쪽 선 음영 (top, left) outset – 바깥…

  • PHP

    PHP – include, require

    include 외부 파일을 불러오는 함수 매개변수로 입력한 파일이 존재하지 않아도 무시하고 진행 가능 (Warning) include_once – 동작은 include와 같지만 선언 횟수에 상관없이 1회만 호출 require 외부 파일을 불러오는 함수 매개변수로 입력한 파일이 존재하지 않으면 에러 발생 (Fatal Error) require_once – 동작은 require와 같지만 선언 횟수에 상관없이 1회만 호출

  • PHP

    PHP – 입출력 및 변환 함수 정리

    입출력 함수 echo – 문자열 출력 print – echo와 비슷, 문자열 출력 printf 형식화한 문자열을 출력 sprintf 형식화한 문자열을 반환 형태 설명 예시 d or i 부호 있는 십진수 392 u 부호 없는 십진수 7235 o 부호 없는 8진수 610 x 부호 없는 16진수 7fa X 부호 없는 16진수(대문자) 7FA f 10진수 부동 소수점, 소문자 392.65 F 10진수 부동 소수점, 대문자 392.65 e 수학 표기법 (가수/지수), 소문자 3.9265e+2 E 수학 표기법 (가수/지수), 대문자 3.9265E+2 a 16진수 부동 소수점, 소문자 -0xc.90fep-2 A 16진수 부동 소수점, 대문자 -0XC.90FEP-2 c 문자 a s 문자열 sample print_r 문자열, 숫자, 배열, 객체 등의 변수의 값을 인쇄 var_dump – 데이터 타입 출력 변환 함수 json_encode 배열 및 stdClass 객체를…

  • PHP

    PHP – XSS 관련 패키지 (AntiXSS)

    AntiXSS 패키지란? AntiXSS 패키지는 문자 내에서 스크립트를 제거 및 변환해주는 PHP 패키지로 사이트 간 스크립팅 방지를 위해 사용할 수 있습니다. 패키지 설치 스크립트 필터 inline style 구문 확인 removeEvilAttributes – style 구문은 허용하며 내부 스크립트만 제거 xss 공격 포함 여부 isXssFound – xss 공격 포함 여부 반환 (True/False) iframe 태그 허용 removeEvilHtmlTags – 함수에 매개변수로 태그를 넣으면 해당 태그는 html 태그로서 동작 참고 자료 github anti-xss

  • Python

    Python – XSS 관련 패키지 (MarkupSafe)

    MarkupSafe 패키지란? MarkupSafe 패키지는 문자 내에서 스크립트를 메타 데이터로 변환해주는 Python 패키지로 XSS (사이트 간 스크립팅) 공격을 방지할 수 있는 패키지입니다. 패키지 설치 Markup 들어오는 인자 값만 이스케이프 할 수 있습니다. escape 내부의 문자열을 이스케이프 해줍니다. 참고 자료 MarkupSafe