전체 글 32

[Python] 포커 족보 검색기

설계 1. 숫자 : 에이스(A), 킹(K), 퀸(Q), 잭(J), 텐(T), 2~9 문양 : 스페이드(S), 하트(H), 다이아(D), 클로버(C) 총 합 52장의 카드 중 5장골라 포커 룰에 따라 그 족보를 확인한다. 2. 입력은 [숫자][문양]으로 이루어진 5자리 리스트로 받는다. EX) [6S, 5D, 2C, AS, KH) 코드 from collections import Counter def handfind(cards): numbers = [card[0] for card in cards] patts = [card[1] for card in cards] number_dict = { '2': 2, '3': 3, '4': 4, '5': 5, '6': 6, '7': 7, '8': 8, '9': 9, 'T'..

IT/Python 2023.09.15

[Python] 쇼핑몰 이미지 크롤링

설계 1. 웹사이트의 이미지를 크롤링한다. 2. 이미지는 dongwon 폴더를 생성하여 저장한다. 3. 이미지 파일의 이름은 이미지 저장 주소의 마지막 값으로 저장된다. 코드 from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.common.keys import Keys import time import urllib.request import os driver = webdriver.Chrome() url = 'https://www.dongwonmall.com/index.do' driver.get(url) time.sleep(3) driver.find_element(By.XPATH,'..

IT/Python 2023.09.14

[Python] 대통령 연설문 크롤링

설계 1. 대통령 기록관 사이트에서 연설문을 크롤링해온다 2. 크롤링해온 연설문 내용은 txt파일로 저장한다 3. txt파일은 [이름][년도].txt로 data_speech 폴더에 저장된다. 코드 from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.common.keys import Keys import time from wordcloud import WordCloud import matplotlib.pyplot as plt from PIL import Image import numpy as np from collections import Counter from konlpy.tag ..

IT/Python 2023.09.13

[데이터베이스] 문제 모음. 01

1. Sales 부서에서 입사일의 평균은? SELECT ROUND((AVG(TO_NUMBER(TO_CHAR(HIRE_DATE,'YYYY')))),0 ) AS "입사년도", ROUND((AVG(TO_NUMBER(TO_CHAR(HIRE_DATE,'MM')))),0 ) AS "월", ROUND((AVG(TO_NUMBER(TO_CHAR(HIRE_DATE,'DD')))),0 ) AS "일" FROM EMPLOYEES E, DEPARTMENTS D WHERE E.DEPARTMENT_ID = D.DEPARTMENT_ID AND DEPARTMENT_NAME = 'Sales'; 2. ASIA에서 DEPARTMENT_NAME이 IT Support 인 사원의 이름을 출력 SELECT DEPARTMENT_NAME,FIRST_..

IT/SQL 2023.09.12

[Python] 사람인 취업공고 엑셀정리

설계 1. 현재 대전지역에서 모집중인 공고를 10페이지까지 불러온다 2. 불러온 결과를 엑셀로 저장한다. 3. 페이지와 연동하여 데이터가 갱신된다. 코드 from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.common.keys import Keys import time import csv driver = webdriver.Chrome() url = "https://www.saramin.co.kr/zf_user/jobs/list/domestic?loc_mcd=105000&panel_type=&search_optional_item=n&search_done=y&panel_count=y&..

IT/Python 2023.09.11

[Python] 바이오리듬

바이오리듬? 바이오리듬(영어: biorhythm)은 인체에 신체,감성,지성의 세가지 주기가 있으며 이 세가지 주기가 생년월일의 입력에 따라 어떤 패턴으로 나타나고 이 패턴의 조합에 따라 능력이나 활동 효율에 차이가 있다는 주장이다. 신체(physical cycle)는 23일, 감성(emotional cycle)은 28일 그리고 지성(intellectual cycle)은 33일을 주기로 한다. (생체리듬과는 다른 개념입니다.유사과학) 코드 import matplotlib.pyplot as plt import math from datetime import datetime today = datetime.now() birth = datetime(2000, 7, 16) #생일 입력 print("현재일 : ", t..

IT/Python 2023.09.10

[Python] 글에 사용된 단어 수 세기

설계 1. 글의 사용된 단어를 카운트하여 딕셔너리에 저장한다. 2. 공백, 줄 바꿈기호, 따옴표 등은 지워준다. 3. python/data 경로에 존재하는 txt문서를 불러온다 코드 file = open('data/문재인대통령.txt', 'r', encoding = 'utf-8') contents = file.read() #contents = str(input('내용 : ')) contents = contents.replace('\n',' ') contents = contents.replace('!','') contents = contents.replace('.','') words = contents.split(' ') word_dict = {} for word in words: if word not i..

IT/Python 2023.09.09

[Python] 이름 자동생성

설계 1. 실행시 랜덤한 이름이 생성되어 txt에 저장된다. 2. 파일명과 이름 수는 설정 가능하다. 코드 import random first_name = ['김','이','박','최', '정','전','강','심','오','소','고','선우','조', '신','임','편','위','제갈','장', '감','유','우','한','표','성','나','주', '배','송','홍','곽','독고','구','백','허'] last_name = ['호','정','순','결','빈','다','수','웅','민','재','훈','영','기','철','란', '성','경','표','석','우','용','배','서','진','종','균','태','인','자','윤', '옥','명','준','아','하','은','권'..

IT/Python 2023.09.07

[Python] 마방진 자동 생성

마방진이란? 자연수를 정사각형 모양으로 나열하여 가로, 세로, 대각선의 합이 모두 같아진 형태를 말합니다. 코드 mabangjin = [] ma = int(input('행수를 입력하세요. : ')) for i in range(ma): mabangjin.append([]) for j in range(ma): mabangjin[i].append(0) x = 0 y = int((ma-1)/2) for cnt in range(1, ma*ma+1): mabangjin[x][y] = cnt x = x - 1 y = y + 1 if x = ma: x = x + 2 y = y - 1 elif x < 0 : x = ma - 1 elif y == ma: y = 0 elif mabangjin[x][y] ..

IT/Python 2023.09.06

[Python] 숫자야구

설계 1. 미리 정해놓은 숫자와 질문에 입력한 숫자를 게임 "숫자야구" 룰로 비교하여 결과를 알려준다. 2. 1~9의 숫자만 사용 가능하며 겹치는 숫자는 사용 불가능 하다. 코드 stk = 0 bal = 0 ans = '394' #답쓰는 부분 que = input(str('질문 : ')) for i in range(0,3): if ans[i] == que[i]: stk += 1 for i in que: if str(i) in ans: bal += 1 bal = bal - stk print(stk,'S', bal,'B') 실행 결과 마무리 파이썬에서 str은 리스트로도 취급이 된다는 점을 이용하여 만든 숫자야구다.

IT/Python 2023.09.05