🗨️ 파이썬 리스트는 총 세 가지가 있습니다. List, 여러 개의 Value들이 하나의 변수에 속해 있습니다. Tuple, 여러 개의 Value들이 하나의 변수에 속해 있습니다. 단, 상수입니다. (수정 불가) Dict, Key와 Value로 나뉘어 배열을 나타냅니다. 배열의 기본인 Index대신해서 Key로 구분을 합니다. 🥇 List list = [1, 2, 3, 4] list2 = [1,2,'mollangpiu'] List의 생성방식은 다음과 같습니다. 대괄호 안에 여러개의 값을 넣으면 됩니다. 값의 구분은 쉼표가 담당하고 있습니다. 그 외에도, Python의 list는 변수의 Type이 자동으로 이루어지는 특성을 살려서 배열 또한 입력된 값에 따라 자유롭게 변화됩니다. 정수, 문자열 등 구분 없..
파이썬이 사용하는 변수타입 Type Comment int 정수 str 문자열 float 실수 bool 참 / 거짓 chr 문자 파이썬이 사용하고 있는 변수는 대표적으로 5가지 입니다. 이는 대표적으로 숫자인 정수, 실수와 문자인 문자열 문자 그리고 참 거짓의 대표적인 bool 입니다. 여기서, chr 타입을 어떻게든 만들려고 했지만, 자동으로 str타입으로 변환되는 문제가 있었습니다. chr 타입을 만드는 방법 아시는 분은 별도로 정보 공유 부탁드립니다. 변수 선언 방법 num = 123#int test_str = '테스트 문자열' 변수 선언 방법은 다음과 같습니다. 변수명 = 값 입니다. 다른 언어에서 사용하는 세미클론 사용 여부는 자유 입니다. 변수 타입 알아보기 print(type(변수명)) 변수 ..
음수의 이야기 Java에서 int를 소개하려고 한다. int는 Java에서 정수를 나타내는 대표적인 타입 중 하나로 4Byte의 크기와 약 21억에 가까운 숫자표현을 할 수 있다는 장점이 있다. 그 중, 우리는 정수중에서 음수에 대해 알아보려고 한다. int에서 음수를 구분하는 방법 int의 가장 큰 특징은 32bit를 사용한다는 점이다. 그 중, 맨 앞자리는 양수와 음수를 구분하는 것으로 표현한다. 맨 앞이 1일 경우, 음수. 0일 경우, 양수. 그래서 양수 5와 음수 5를 비교했을 때, 결과값은 서로 다르게 나오는 것을 확인할 수 있다. 이 점을 알았을 때, 단순히 앞자리가 1로만 바뀌는 것을 알 수 있었다. 쉬프트 연산자 이용할 경우 여기서 재밋는 부분은 쉬프트 연산자를 사용했을 때 더 알 수 있었..
파이썬 설치하기 https://www.python.org/downloads/ Download Python The official home of the Python Programming Language www.python.org 파이썬 설치홈페이지를 접속하여, 파이썬을 설치하도록 하자. 파이썬을 사용하기 위해 설치한다면, 아랫부분을 반드시 클릭해줘야 한다. C:\Users\MHS\AppData\Local\Programs\Python\Python311\Scripts\ 시작에서 파이썬이 검색되서 실행되면 성공되었다.
상속 Java의 대표적인 기능 중 하나이다. Class 내의 함수 혹은 필드를 그대로 다른 Class에게 전달하는 의미이다. 물건을 다른 사람에게 전달해주듯 변수명, 함수명을 같이 사용할 수 있도록 한다. class TestA { void testA() { System.out.println("testA의 전유물"); } } class TestB extends TestA { void testB() { System.out.println("testB의 전유물"); } } public class ExtendStudy { public static void main(String[] args) { TestB testB = new TestB(); testB.testA(); testB.testB(); } } TestB의..
Java, 셀레니움 설치하기 셀레니움 이란? 현재 서비스 중인 웹 사이트의 html 코드를 긁어오기 위한 언어 중 하나이다. HTML 코드는 Value값이 변하더라도, 정해진 html 안에서 코드의 결과가 발생된다. 그래서 해당되는 태그 안의 결괏값을 가져와서 마치 자신의 데이터처럼 가져오는 기술이다. 일반적으로 허용되는 기술이 아닌만큼, 사용할 때는 다른 서버에 부담되지 않도록 조심해야 한다는 단점 또한 있다. 셀레니움은 제이숲과 비슷하게 사용하지만 최근 FrontEnd의 기술이 발달된 만큼 동적 페이지가 많아지고 그로 인해서 jsoup이 불러오지 못하는 html이 많아지기에 셀레니움을 선호하기도 한다. Selenium 라이브러리 설치하기 https://www.selenium.dev/downloads/..
Java, FCM Push 전송하기, json Version Java에서 APK Push 전송하기 import org.json.simple.JSONObject; import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.OutputStream; import java.net.HttpURLConnection; import java.net.URL; public class FCMessage { // FCM에서 가입 후 받는 키값 public final static String AUTH_KEY_FCM = "TOKEN을 보내기 위한 KEY 값, ANDORID ID에 KEY 값이 있다."; public final static Stri..
Java, Cookie 활용하기 Cookie의 활용 Cookie, HTTP의 일종으로 인터넷 사용자가 웹 사이트 방문시, 그 사이트가 사용하고 있는 서버를 통해 사용자의 pc에 설치되는 작은 기록 정보이다. HttpServletRequest를 사용하는 Java에서 request값을 오랫동안 값을 유지하기 위해 대신 사용하는 방법 중 하나이다. 보통, Login 여부 혹은 이전에 받은 Data를 저장하기 위한 용도로 활용한다. 이 활용에 가장 비슷한 것은 Session이 있다. Session과 Cookie의 차이 먼저, Session과 Cookie의 가장 큰 차이라고 한다면 서버와 클라이언트이다. Session은 Server에 값을 저장하고, Cookie는 Client에 값을 저장한다. Server는 ..
[Java] Thread 활용하기 Thread Process(프로세스) 보다 더 작은 단위로, 한 개 이상의 스레드가 작동해야 프로세스가 작동된다. 한 프로세스 안의 복수 개의 스레드가 존재하여, 한 번의 실행으로 여러 개의 작업효과를 나타내기 위해 사용하는 기술이다. 예를 들면, 하나의 업무를 하기 위해 한 사람이 일하는 것과 여러 사람이 같은 일을 처리한다고 생각한다면 보통 여러 사람이 같이 일한다면 금방 끝날 것임을 누구나 쉽게 예측할 수 있다. 마찬가지로 스레드를 사용하고, 알아야 하는 이유는 스레드를 사용하여 작업시간의 단축에 의미를 갖는다. 그렇다면, Thread를 왜 사용할까? Java는 보통 한 개의 스레드, 프로세스만 사용한다. 한 개의 작업이 실행되는 동안, 다른 작업의 실행은 할 수 ..
Java, 메모장 파일 만들기 메모장 파일 만들기 데이터의 길이가 일정하지 않으며, 데이터의 길이가 초과될 수도, 없을 수도 있는 상황 속에서 이 데이터를 DB에 넣기에는 매우 안 좋다고 생각되었습니다. DB의 용량을 1000으로 했을 때, 길이가 100이 될 수도 있는거고, 길이가 1000이 넘을 수 있는 상황도 있을 수 있기 때문입니다.그래서 메모장을 만들어 저장을 한다면, 이런 위험에 대해서 대비 할 수 있고 메모장의 이름만 DB에 저장한다면 가능할지 모른다고 생각하여 만들게 되었습니다. package test; import java.io.BufferedWriter; import java.io.File; import java.io.FileWriter; public class test02 { publ..
자바 Stack 클래스 사용 방법 Stack의 소개 시험이나 책에서 단골 소재로 소개되는 Stack은 FILO(First In Last Out)로 외우면 끝이다. 먼저 들어온 상자가 제일 나중에 나가듯이 먼저 들어온 데이터가 가장 나중에 나가는 구조를 가진 원리이다. import java.util.Stack;//import 하기 Stack stack = new Stack();//String 형 Stack 선언 사용 방법은 Stack을 선언해서 사용하면 된다. 제네릭 부분에는 사용할 객체를 담으면 된다. Stack의 사용 stack.push(값);//추가 stack.pop();//삭제 먼저 Stack에 대해 설명을 했듯이, 들어오는 것만 값을 입력하고, 삭제는 값을 입력하지 않는다. 제일 마지막에 들어온 ..
List를 Array 형변환, toArray. 상황에 따라서, List를 Array로 형변환 시켜야할 때가 존재한다. 이에 따라 for문을 사용해서 바꿀수 있지만, 번거로움이 존재한다. 그러나 이를 함수 하나로 사용해보자. List list = new ArrayList(); String[] arr = new String[5]; arr = list.toArray(arr); 위의 List를 Array로 변환 시켰다. 비록, list에는 아무것도 담겨있지 않지만, 이렇게 사용하면 매우 쉽게 사용 할 수 있다. arr = list.toArray(new String[5]); list는 List의 대상의 자리이며, new String[5]는 현재 String 배열에 담기 때문에, String 객체의 배열크기 5를 ..
YAML 실행하기 yaml 사용 import yaml yaml_data = """ color_def: - &col1 "#ff0000" - &col2 "#00ff00" - &col3 "#0000ff" color: title1: *col1 title2: *col2 title3: *col3 """ data = yaml.load(yaml_data) print("title1 = ", data["color"]["title1"]) print("title2 = ", data["color"]["title2"]) print("title3 = ", data["color"]["title3"]) YAML 실행하기 2 # YAML 데이터를 파이썬으로 읽어오기 import yaml #yaml 데이터 정의 yaml_data = ""..
#파이썬으로 json 분석하기 import urllib.request as req import os.path import json #json데이터 다운로드하기 url = "https://api.github.com/repositories" fileName = "rep.json" if not os.path.exists(url): req.urlretrieve(url, fileName) jsonData = open(fileName, "r", encoding="utf-8").read() data = json.loads(jsonData) for dat in data: print(dat["name"] + " - " + dat["owner"]["login"])
네이버 api (개발자) 제공 사이트 : developers.naver.com/docs/search/news/ # 네이버 검색 API예제는 블로그를 비롯 전문자료까지 호출방법이 동일하므로 blog검색만 대표로 예제를 올렸습니다. # 네이버 검색 Open API 예제 - 블로그 검색 import os import sys import urllib.request client_id = "네이버 클라이언트 ID" client_secret = "네이버 클라이언트 시크릿" #뉴스 키워드 검색 encText = urllib.parse.quote("it") url = "https://openapi.naver.com/v1/search/news.json?query=" + encText # json 결과 # url = "ht..