본문 바로가기

전체 글

(42)
로또 API를 이용하여 이전에 당첨된 적 없는 번호 추천해주는 서비스 def get_lotto_nums(drwno): url = f'https://www.dhlottery.co.kr/common.do?method=getLottoNumber&drwNo={drwno}' response = requests.get(url) output = response.json() result = [] result = [output[f'drwtNo{i+1}'] for i in range (6)] # result.append(output['bnusNo']) return tuple(result) 저 위에 url로 숫자를 넣어 들어가면 해당 회차 로또 정보를 얻을 수 있다. 결과값은 튜플로 넣어서 변하지 않도록 해주자. output = get_lotto_nums(1100) output (17, 26..
파이썬 표준 라이브러리(json, requests, math, collections) 6. JSON JSON(JavaScript Object Notation)은 데이터를 효과적으로 표현하고 교환하기 위한 경량의 데이터 형식이라고 한다. 웹상에서 데이터를 주고받을 때, 이 형식을 많이 따른다. import json data = {"name": "john", "age": 30, "city": "Seoul"} json.dumps(data) #dumps하면 문자열 형식으로 바꿔준다. > str #json.dumps()를 통해 딕셔너리이던 data의 파일형식을 문자열 형식으로 바꿔준다. 반대로, json.loads()를 통해서는 str이었던 것은 dict로 바꿀 수 있다. json_string = json.dumps(data) json_string # >> str. data = json.loads..
파이썬 표준 라이브러리 (random, time, datetime, os, glob) .py로 끝나는 파일을 모듈이라고 하고, 모듈이 모이면 패키지가 된다. 그 패키지가 모여 큰 라이브러리가 되는데, 파이썬에서 기본적으로 제공하는 라이브러리가 있다. 아주 강력한 기능을 가진 그러한 라이브러리가 많다. 파일 처리, 시스템 관리, 네트워크 관리, 텍스트 처리, DB관리 등 여러 영역에서 쓸 수 있는 풍부한 기능을 제공한다. 1. random random 모듈은 어떤 데이터를 랜덤하게 생성할 때 이용할 수 있다. 임의의 숫자를 생성할 수 있다. 맨처음 불러올 때는, import random 하면된다. import random random.random() #임의의 숫자 생성함. random.randint(10, 100) #10에서 100사이의 숫자 중 하나를 임의로 출력함. items = ['a..
[Python] class 초기값 지정할 때 주의할 점. class A: def __init__(self, name, courses=[]): self.name = name self.courses = courses 이런 클래스 A가 있다고 치자. A라는 클래스에서 courses=[] 이라는 것을 통해 초기값을 지정해줬다. a = A("a") a.courses.append("파이썬") b = A("b") # b 인스턴스엔 아무것도 추가하지 않았음. a와 b라는 인스턴스를 만들고 a에만 "파이썬"이라는 문자열을 넣어주었다. 그리고나서 a.courses, b.courses 이렇게 두 인스턴스의 courses를 확인하면 둘 다 '파이썬'이 들어가 있는 것이 확인된다. 그래서 이렇게 초기값을 지정하면 안되고, class A: def __init__(self, name, ..
[Python] 매직 메서드 (Magic Methods) 파이썬에서 매직 메서드는 더 특별한 동작을 정의하기 위해서 사용되는 특별한 이름을 가진 메서드다. 얘들은 두 개의 밑줄로 시작하여 두 개의 밑줄로 끝난다. 이들이 클래스안에 여러 동작들을 처리하도록 도와준다. GPT한테 매서드 뭐있냐고 물어봤다. 그럼 매직메서드 예시코드로 가보자. - 매직매서드 예시코드 class Product: def __init__(self, name, price): self.name = name self.price = price def __str__(self): return f"Product: {self.name}, Price: {self.price}" product = Product("Dolce Latte", 5100) print(product) # 실행하면 Product: Do..
[Python] 클래스인데, 데이터 클래스는 무엇인가? 파이썬에 데이터 클래스라는 것이 있다. 파이썬을 데이터를 다루는데 장점이 있는데, 클래스로 데이터를 중점적으로 다룰 때 사용하면 좋다. 예시코드로 드가자. # DATACLASS # 클래스인데, 데이터 중점으로 사용하는 클래스 from dataclasses import dataclass @dataclass class Book: title: str author: str year_published: int book1 = Book("네 인생 우습지 않다", "전한길", 2024) print(book1) #데이터 클래스로하면 사용이 편리함 !! 처음에 from dataclasses import dataclass를 통해서 모듈을 불러온다. 그다음 @dataclass로 연결. > 데이터를 저장하는 간단한 클래스 만들..
클래스 연습(비대면진료 시스템) 4개의 클래스를 만든다. Person Doctor Patient Appointment Doctor와 Patient 클래스는 Person이라는 클래스를 상속받을거고 이를 바탕으로 환자와 의사가 약속을 잡는 Appointment에서는 doctor와 patient를 속성으로 받을거다. #비대면진료 시스템 만들어보기..... (오후 1) # 사람 class >> 의사, 환자정보 업뎃 # 진료 일정잡는거 class Person: def __init__(self, name, age): #person은 이름과 나이만 받는다. self.name = name self.age = age class Doctor(Person):#의사분들이 확인해야할 진료일정 수 total_appointments = 0 def __init__..
클래스 연습 (식당메뉴) 식당에서 메뉴를 보여주고 삭제하는 기능을 클래스로 구현해보자. #오후시간 시작 #class 정리 #클래스 : 메뉴(메뉴 보여주기, 메뉴추가, 삭제), 상점() class Menu: def __init__(self): self.menus = dict() #menus라는 딕셔너리를 하나 생성함. def add_menu(self, name, price): #메뉴를 추가하는 기능 if name in self.menus.keys(): #self.menus라는 딕셔너리의 키들을 name이라는 변수로 받아서 print("이미 있는 메뉴입니다.") #add_menu로 받은 이름이랑 겹치면 이미 있다고 출력 else: self.menus[name] = price #그렇지 않으면 받은 이름과 가격을 추가해준다는 코드 de..