-
2023.04.11
[Python] 파이썬에서 외부 모듈 등록 방법 (sys.path.append, PYTHONPATH)
파이썬에서 외부 모듈 등록 방법 들어가며 해당 모듈이 있는 디렉터리로 이동하지 않고 모듈을 불러와서 사용하는 방법을 알아보자. 방법 ① sys.path.append 사용하기 먼저 파이썬 셸을 실행한 후 sys 모듈을 불러온다. C:\myPy> python >>> import sys sys 모듈은 파이썬을 설치할 때 함께 설치되는 라이브러리 모듈이다 이 sys 모듈을 사용하면 파이썬 라이브러리가 설치되어 있는 디렉터리를 확인할 수 있다. 다음과 같이 입력해 보자. >>> sys.path ['', 'C:\\Windows\\SYSTEM32\\python311.zip', 'c:\\Python311\\DLLs', 'c:\\Python311\\lib', 'c:\\Python311', 'c:\\Python311\\l..
-
2023.04.07
[CSS] 글자색을 투명색으로 설정하는 방법
글자색을 투명색으로 설정하는 방법 들어가며 글자의 공간은 유지한 채, 글자색을 투명색으로 설정하는 방법을 알아보자. 방법 해당 요소의 @color@ 속성의 값을 @transparent@로 설정해준다. h1 { color: transparent; } 참고 사이트 Hide text using css I have a tag in my html like this: My Website Title Here Using css I want to replace the text with my actual logo. I've got the logo there no problem via resizing the tag and stackoverflow.com
-
2023.01.04
[VBA] 액셀(Excel)에서 이모지(Emoji) 사용하는 방법
액셀(Excel)에서 이모지(Emoji) 사용하는 방법 들어가며 액셀에서 VBA 작업을 할 때, 이모지(Emoji)를 사용하는 방법에 대해 정리해본다. VBA 작업을 할 때, 코드 창에 이모지를 복사하여 붙여넣을 경우 ??로 표시된다. If chkbox보관판매.Value = True Then Sheets("1월").Cells(입력행, 1) = ?? '이모지를 넣었을 경우 ??로 표시됨. End If 따라서 이모지를 표시되도록 하려면 특별한 작업을 해줘야 한다. 방법 FileFormat.Info 사이트에 들어가서 원하는 이모지를 검색한다. https://www.fileformat.info/index.htm 예를 들어, Thumbsup(👍) 이모지를 검색해본다. UTF-16(decimal) 또는 UTF-16..
-
2022.09.27
[CSS] 다크/라이트 모드 구현 방법
다크/라이트 모드 구현 방법 들어가며 CSS를 이용하여 홈페이지에 다크/라이트 모드를 적용할 수 있다. 보통 토글(Toggle) 버튼을 만들어서 사용자가 기호에 따라 원하는 모드로 변경할 수 있도록 한다. (자바스크립트 또는 제이쿼리를 사용해서 구현할 수 있다.) 방법 방법 ① : prefers-color-scheme 미디어 쿼리 이용하기 prefers-color-scheme 미디어 쿼리는 사용자의 OS에 설정된 라이트/다크 모드를 실시간으로 감지하여 최적화된 CSS 스타일이 적용되도록 해준다. 감지하는 역할만 하기 때문에, 아쉽게도 토글 버튼 등을 이용하여 속성을 변경시킬 수는 없다. (light ↔ dark) @media (prefers-color-scheme: light) { /* 라이트 모드에 적..
-
2022.09.21
[CSS] 글자/단어 사이의 간격 조정하기 (letter-spacing, word-spacing)
글자/단어 사이의 간격 조정하기 (letter-spacing, word-spacing) 들어가며 간단하게 CSS 속성을 이용하여 문장 내의 글자(Letter) 또는 단어(Word) 사이의 간격을 조정할 수 있다. 방법 글자(Letter) 사이의 간격 조정하기 letter-spacing 속성을 사용하여 글자(Letter) 사이의 간격을 조정할 수 있다. body { letter-spacing: 5px; /* 글자 사이 간격 조정하기 */ } 단어(Word) 사이의 간격 조정하기 word-spacing 속성을 사용하여 단어(Word) 사이의 간격을 조정할 수 있다. body { word-spacing: 5px; /* 단어 사이 간격 조정하기 */ } 속성 특징 속성값이 커지면 간격이 커진다. 속성값에는 음수..
-
2022.08.28
[Kotlin] 널(Null)
널(Null) 널(Null), 너는 누구니? 코틀린은 변수를 사용할 때 반드시 값이 할당되어 있어야 한다는 원칙이 있다. 만약 값이 할당되지 않은 변수를 사용하면 코틀린에서 오류가 발생한다. 한편 값이 없는 상태는 널(Null) 이라고 부른다. 프로그램이 실행되는 도중에 값이 null 인 변수에 접근하려 하면 NPE(NullPointerException) 오류가 발생한다. 변수에 null 할당을 허용하려면 자료형 뒤에 물음표 기호(?)를 명시해야 한다. null을 이용한 변수 검사 코틀린의 변수 선언은 기본적으로 null을 허용하지 않는다. val a: Int = 30 var b: String = "Hello" 다음과 같이 null 가능한 변수들을 선언할 수 있다. val a: Int? = null va..
-
2022.08.27
[Kotlin] 자료형과 변수
자료형과 변수 자료형과 변수 자료형 Int String Float ... 변수 val (Value) : 불변형(Immutable) var (Variable) : 가변형(Mutable) 변수의 선언 val username: String = "Kildong" 선언 키워드 변수 이름 자료형 값 변수 선언 예 val username = "Kildong" // 자료형을 추론하여 String 으로 결정 var username // 자료형을 지정하지 않은 변수는 사용할 수 없음. val init: Int // 사용 전 혹은 생성자 시점에서 init 변수를 초기화 해야 함. val number = 10 // number 변수는 Int 형으로 추론 여기서 주의할 점은, var username 과 같이 자료형을 지정하지 ..
-
2022.08.26
[Kotlin] InteliJ IDEA 살펴보기 & main() 함수
InteliJ IDEA 살펴보기 & main() 함수 IntelliJ IDEA 도구 창의 단축키 도구창 단축키(윈도우) 단축키(맥) Message [Alt] + [0] [Cmd] + [0] Project [Alt] + [1] [Cmd] + [1] Favorites [Alt] + [2] [Cmd] + [2] Run [Alt] + [4] [Cmd] + [4] Debug [Alt] + [5] [Cmd] + [5] TODO [Alt] + [6] [Cmd] + [6] Structure [Alt] + [7] [Cmd] + [7] Terminal [Alt] + [F12] [Option] + [F12] Create a new project Coding main을 타이핑하고 [Tab] 키를 눌러보자. main 함수가 코..
-
2022.08.24
[Kotlin] 코틀린의 개요
코틀린의 개요 Kotlin 탄생 배경 목표 풀 스택 웹 개발, Android와 iOS 앱 그리고 임베디드, IoT 등 모든 개발을 다양한 플랫폼에서 개발할 수 있도록 하는 것 특징 IDE(Android Studio의 모체)로 유명한 JetBrains 에서 개발하고 보급 코드가 간결하고 다재 다능하며 호환성이 높다. 문장 끝에 세미콜론은 옵션이다. Android Studio 에서 안드로이드 공식 언어로 추가 변수는 Nullable(널 값 사용 가능)과 NotNull로 나뉘는데, 변수 선언시 '?'를 붙여 Nullable로 만들 수 있다. 다양한 플랫폼 사용 가능한 플랫폼 Kotlin/JVM : 자바 가상 머신 상에서 동작하는 앱을 만들 수 있다. Kotlin/JS : 자바 스크립트에 의해 브라우저에서 동작..
-
2022.08.21
[Kotlin] 코틀린 한 눈에 알아보기
코틀린(Kotlin) 한 눈에 알아보기 코틀린(Kotlin) IntelliJ IDEA의 개발사 JetBrains에서 2011년에 공개한 오픈 소스 프로그래밍 언어 JVM 기반의 언어이며, Java와 유사하지만 더 간결한 문법과 다양한 기능을 추가하였다. Java와의 상호 운용이 100% 지원된다. JVM 바이트 코드가 기본이지만, Kotlin/Native 컴파일러를 사용하여 기계어로 컴파일할 수 있다. 안드로이드, 스프링 프레임워크, 톰캣, JavaScript, Java EE, HTML5, iOS, 라즈베리 파이 등을 개발할 때 사용할 수 있다. 2017년에 구글이 안드로이드의 공식 언어로 Kotlin을 추가하였다. 이는 오라클과의 Java API 저작권 분쟁의 여파로 보는 시각이 많다. 이름은 JetB..
-
2022.07.12
[HTML] 요소에 마우스 커서를 올릴 때 설명문 나타나도록 하기 (Hover Text 추가하기)
요소에 마우스 커서를 올릴 때 설명문 나타나도록 하기 (Hover Text 추가하기) 들어가며 요소에 속성을 추가하여 요소에 마우스 커서를 올리면 설명문이 나타나도록 설정할 수 있다. 방법 요소에 title 속성을 지정해주면 된다. 사용 예 참고 https://stackoverflow.com/questions/11022843/add-hover-text-without-javascript-like-we-hover-on-a-users-reputation Add hover text without javascript like we hover on a user's reputation In stackoverflow, when we hover on a user's reputation we see a text. I ha..
-
2022.07.09
[C++] 입력 함수 : cin(), getline() (and cin.ignore())
입력 함수 : cin(), getline() (and cin.ignore()) 들어가며 C++의 입력 함수인 cin()과 getline() 함수에 대해 알아보자. 그리고 입력 버퍼를 비우는데 사용되는 cin.ignore() 함수에 대해 간단히 알아보자. cin() 헤더에 정의되어 있다. 표준 입력 버퍼에서 공백 혹은 개행 문자(\n) 이전 까지의 값만을 받아들인다. >> 연산자를 사용하여 공백이 포함된 문자열을 입력 받을 경우, 공백 전의 문자만 입력된다는 단점이 존재한다. 공백이 포함된 문자열을 입력받으려면 getline() 함수를 사용해야 한다. #include int str; cin >> str; // "My Blog" 입력 cout > val; getline(cin, str); cout
-
2022.07.09
[C++] 범위 기반 for 문(Range-based for Statement)
범위 기반 for 문(Range-based for Statement) 개념 더 간단하고 안전하게 배열 등의 모든 요소를 반복할 수 있다. 범위(Range)를 통해 실행되어야 하는 루프를 생성한다. C++11 부터 사용 가능 구문 attr(optional) for ( init-statement(optional)range-declaration : range-expression ) loop-statement 속성 설명 attr any number of attributes init-statement either (since C++20) ▶ an expression statement (which may be a null statement ";") ▶ a simple declaration, typically a d..
-
2022.07.07
[C++] 자료형(Data Type)
C++의 자료형(Data Type) C++ 의 자료형에는 기본형, 문자형, 정수형, 실수형(부동 소수점형)이 있다. 기본형 void 문자형 (singed) char unsigned char wchar_t 정수형 bool (signed) short (int) unsigned short (int) (signed) int unsigned int (signed) long (int) unsigned long (int) __int8 __int16 __int32 __int64 실수형(부동 소수점형) float (long) double 정수 자료형의 크기 및 범위 (LLP64/IL32P64, Windows) 자료형 크기 범위 비고 char signed char 1 Byte 8 Bits -128 ~ 127 unsigne..
-
2022.07.07
[C++] 이스케이프 시퀀스(Escape Sequence)
C++ 이스케이프 시퀀스(Escape Sequence) 이스케이프 시퀀스(Escape Sequence, 확장열)란? 컴퓨터와 주변 기기의 상태를 바꾸는 데에 쓰이는 일련의 문자열로, 제어 시퀀스(Control Sequence)라고도 한다. 일부 제어 시퀀스는 늘 같은 의미를 지니고 있는 특수 문자이다. 이스케이프 시퀀스는 이스케이프 문자를 이용하여 이를 따르는 문자들의 뜻을 바꿀 수 있는데, 여기서 문자들은 데이터가 아닌 실행 명령어로 해석할 수 있다. - Wikipedia 이스케이스 시퀀스의 종류 이스케이프 시퀀스 설명 \a 경고(Alert) \n 줄바꿈(New Line) \t 수평 탭(Horizontal Tab) \v 수직 탭(Vertical Tab) \b 백스페이스(Backspace) \f 폼 피드..
-
2022.07.01
[CSS] CSS를 이용하여 이미지 대체하기
CSS를 이용하여 이미지 대체하기 들어가며 간단하게 CSS 속성을 이용하여 기존의 이미지를 대체해보자. 방법 content 속성을 이용하여 다른 이미지로 대체해준다. .A img { content: url("image2.png"); } 참고 https://stackoverflow.com/questions/12142386/replacing-an-image-in-an-img-tag-using-css Replacing an image (in an tag) using css I have the following html: In my media queries css style sheet, I would like to replace that image stackoverflow.com
-
2022.06.16
[Python] 10진수를 2진수/8진수/16진수로 변환하기
10진수를 2진수/8진수/16진수로 변환하기 들어가며 재귀(Recursion) 함수를 이용하여 간단하게 10진수를 2진수/8진수/16진수로 변환하는 프로그램을 작성할 수 있다. 프로그램 구현 0부터 F(15)까지의 문자를 리스트에 순서대로 넣어준 후, 필요할 때마다 리스트의 인덱스에 접근하여 나타내도록 하면 된다. def notation(base, n) : if n < base : print(numberChar[n], end = ' ') else : notation(base, n // base) print(numberChar[n % base], end = ' ') numberChar = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'] numberChar += [..
-
2022.06.16
[Python] 회문/팰린드롬(Palindrome) 판단하기
회문/팰린드롬(Palindrome) 판단하기 들어가며 회문(Palindrome) : 앞에서부터 읽든 뒤에서부터 읽든 동일한 단어나 문장 대·소문자는 구분하지 않고, 공백이나 특수 문자는 제외한다. 첫 글자와 마지막 글자를 비교하여 같으면 회문일 수 있고, 다르면 회문이 아니다. 비교하지 않은 글자가 한 글자 이하이면 회문으로 확정하고, 한 글자 이하가 아니면 첫 글자는 다음 글자로 마지막 글자는 바로 앞 글자로 이동하는 식으로 비교하고 확인하는 과정을 반복한다. 회문인 예 회문이 아닌 예 프로그램 구현 재귀 함수를 이용하여 팰린드롬의 여부를 확인하는 프로그램을 작성할 수 있다. def palindrome(pStr) : if len(pStr) X kayak--> O Borrow or rob--> O 주유소..
-
2022.06.03
[JavaScript] jQuery를 사용하지 않고 최상단 화면 이동 기능 구현하기
jQuery를 사용하지 않고 최상단 화면 이동 기능 구현하기 들어가며 제이쿼리(jQuery)를 사용하지 않고, 자바스크립트(JavaScript)만으로 화면의 최상단으로 이동할 수 있는 버튼을 만들 수 있다. 방법 1 : 스크롤 이동 효과를 주며 이동하기 ID가 "scrollup"인 버튼을 누르면 스크롤이 이동하는 효과와 함께 화면의 최상단으로 이동하도록 해보자. HTML JavaScript var scrollBtn = document.getElementById('scrollup'); // 10 밀리세컨드(ms) 마다 -50px 씩 스크롤된다. const scrollWindow = function () { if (window.scrollY != 0) { setTimeout(function () { wind..
-
2022.06.03
[CSS] 마우스 커서(Mouse Cursor)
마우스 커서(Mouse Cursor) 들어가며 CSS에서 사용할 수 있는 마우스 커서의 종류에 대해 알아보자. CSS에서 마우스 커서는 다음과 같이 지정할 수 있다. #element:hover { cursor: mouse_cursor_value; } 마우스 커서의 종류
-
2022.05.31
[CSS] <span> 요소 줄 바꿈 하기
요소 줄 바꿈 하기 들어가며 여러 개의 요소를 작성할 경우, 한 줄에 모두 표시되게 된다. Element 1 Element 2 Element 3 더보기 Element 1 Element 2 Element 3 간단하게 CSS 속성을 적용하여 이러한 요소가 한 줄마다 표시되도록 할수 있다. 방법 부모 요소와 자식 요소에 모두 display: block; 속성을 적용시켜준다. Element 1 Element 2 Element 3 #test { display: block; } #s1 { display: block; } #s2 { display: block; } #s3 { display: block; } 테스트 See the Pen Untitled by Sangsoon Kim (@starrykss) on CodeP..
-
2022.05.13
[CSS] <body> 요소 가운데 정렬하기
요소 가운데 정렬하기 간단하게 태그에 margin 속성을 적용하여 태그를 가운데로 정렬 할 수 있다. 방법 간단하게 margin: 0 auto; 속성을 적용해주면, 요소가 가운데로 정렬된다. body { margin: 0 auto; width: 1200px; } 적용 예
-
2022.05.12
[JavaScript] 특정 요소를 새로운 새로운 창으로 띄우기
특정 요소를 새로운 창으로 띄우기 개요 자바스크립트를 이용하여 특정 요소를 새 창으로 띄울 수 있도록 할 수 있다. 코드 See the Pen PopUpElem (with JavaScript) by Sangsoon Kim (@starrykss) on CodePen.
-
2022.05.09
[JavaScript] 디데이 카운터(D-Day Counter) 만들기
디데이 카운터(D-Day Counter) 만들기 들어가며 자바스크립트를 이용하여 디데이 카운터를 만들어보자. 코드 See the Pen Untitled by Sangsoon Kim (@starrykss) on CodePen. 사파리(Safari) NaN 이슈 해결하기 사파리(Safari) 또는 IE8 이하의 브라우저를 사용할 경우, Date() 함수의 출력 결과가 NaN으로 표시된다. 이 문제를 해결하기 위해 입력값을 넣을 때, 다음과 같이 일(DD)과 시간(HH) 사이에 T를 넣어준다. new Date('2014-02-18T15:00:48') 혹은 다음과 같이 replace() 함수를 사용한다. new Date('2014-02-18T15:00:48'.replace(/\s/, 'T')). 참고 : htt..
-
2022.04.27
[JavaScript] 공백이 검색되지 않도록 하기 (검색창 구현)
공백이 검색되지 않도록 하기 (검색창 구현) 개요 검색창(Search Bar) 기능을 구현할 때, 자바스크립트(JavaScript)를 이용하여 공백의 내용이 검색되지 않도록 설정할 수 있다. 방법 검색창의 내용이 비어있는지 확인하는 알고리즘이 들어있는 함수를 생성한다. getElementById() 함수를 사용하여 검색창(searchbar)에 있는 값(value)을 가져온 후, trim() 함수를 이용하여 공백('')을 기준으로 잘라준다. trim() 함수를 사용한 후의 값의 공백일 경우, 내용이 비어있다는 메시지와 함께 함수를 종료시켜준다. 그렇지 않을 경우 검색 작업을 수행시키도록 한다. 전송(submit) 버튼의 onclick 속성에 함수를 넣어준다. 사용 예 HTML JavaScript funct..
-
2021.06.12
스프레드시트 일반 : 프로그래밍의 기본
스프레드시트 일반 프로그래밍의 기본 ① 모듈(Module) 프로시저의 집합 프로젝트를 구성하는 기본 단위 표준 모듈 워크시트 모듈 : Sheet로 표시되는 모듈 ThisWorkbook 모듈 공용 모듈 : 일반적으로 사용하는 모듈 클래스 모듈 개체를 새롭게 정의해서 사용할 수 있도록 작성하는 모듈 개체의 속성, 메서드, 이벤트를 정의하는 모듈 종류 폼 모듈 사용자 정의 폼을 디자인하고, 사용자 저의 폼의 컨트롤에 이벤트 프로시저를 작성하는 모듈 보고서 모듈 보고서에 연결되어 있는 모듈 이벤트 프로시저를 포함함. ② 프로시저(Procedure) 특정 기능을 실행할 수 있도록 나열된 명령문의 집합 모듈(Module) 안에 구성됨. 사용자가 기록한 매크로도 하나의 프로시저임. 프로시저는 코드가 작성되는 공간으로..
-
2020.12.28
코딩할 때 도움이 될만한 내용들 (C++)
Here are some things that may help you improve your code. Don't use std::endl if you don't really need it The difference betweeen std::endl and '\n' is that '\n' just emits a newline character, while std::endl actually flushes the stream. This can be time-consuming in a program with a lot of I/O and is rarely actually needed. It's best to only use std::endl when you have some good reason to flus..