반응형

Python

(파이썬) 특정 년도가 윤년인지 확인하는 함수 is_leap_year

윤년은 다음과 같이 구합니다. 1. 년도가 4의 배수이다 - 4로 나누어 떨어진다. 2. 100의 배수는 윤년이 아니다 - 4로 나누어 떨어지지만 100의 배수는 윤년이 아니다. 3. 위의 1,2를 만족하지만 다시 400의 배수는 윤년이다. 위의 3가지를 모두 만족해야 윤년에 해당합니다. 위의 코드를 파이썬 식으로 표현하면 다음과 같습니다. if (year % 4 ==0) and (year % 100 !=0) or (year % 400 ==0): # 윤년입니다 else: # 윤년이 아닙니다. year % 4 ==0: 년도(year)를 4로 나눈 나머지가 0인지 확인 and: 양쪽의 2 개의 조건을 모두 만족해야 True or: 양쪽의 2 개의 조건 중에서 한 개라도 만족되면 True or 보다는 and가..

Python 2023.12.10

(파이썬) 클래스의 생성자 오버로딩은 지원하지 않습니다

파이썬에서는 생성자(Constructor)를 명시적으로 오버로딩하는 것은 지원되지 않습니다. 생성자는 클래스의 인스턴스를 초기화하는 특별한 메서드로, 파이썬에서는 __init__이라는 이름으로 사용됩니다. 이 메서드는 클래스의 객체가 생성될 때 자동으로 호출되며, 객체의 초기 상태를 설정하는 데 사용됩니다. 이전 포스팅에서 다뤘던 생성자를 조금 수정해 보겠습니다. 이러한 생성자는 C++, C#, Java와 같은 언어에서 사용하는 방식으로 생성자 중복(오버로딩)으로 만들었습니다. 하지만 파이썬에서는 생성자 오버로딩을 사용할 수 없습니다. https://coding-abc.kr/228 class Car: make = "" model = "" year = 0 # 생성자 def __init__(self): se..

Python 2023.12.07

(파이썬) Car 클래스 상속, Truck 정의하기

아래의 글에서 이어지는 내용입니다. Car 클래스를 상속받는 트럭(Truck) 클래스를 간단하게 정의해 보겠습니다. https://coding-abc.tistory.com/228 (파이썬) Car: 기본 클래스 만들기, 생성자 속성 메소드 파이썬에서 차(Car)를 모델링하는 아주 기본적인 클래스를 만들어 보겠습니다. 차량 정보는 제조업체, 모델, 년식 정도를 표현해 보겠습니다. 1. 필드 선언 아주 기본적인 개념으로 필드만 선언해 coding-abc.kr Car 클래스에는 제모업체, 모델, 년식을 정의했습니다. 이 클래스를 상속받아 트럭(Truck) 클래스를 정의합니다. 트럭 클래스는 Car 클래스에 중량(weight)이 필드가 추가됩니다. Truck 클래스의 생성자에서 "self().__init__()..

Python 2023.12.05

(파이썬) Car: 기본 클래스 만들기, 생성자 속성 메소드

파이썬에서 차(Car)를 모델링하는 아주 기본적인 클래스를 만들어 보겠습니다. 차량 정보는 제조업체, 모델, 년식 정도를 표현해 보겠습니다. 1. 필드 선언 아주 기본적인 개념으로 필드만 선언해서 Car 클래스를 만들어 보겠습니다. class Car: make = "" model = "" year = 0 car1 = Car() car1.make = "현대자동차" car1.model = "쏘나타" car1.year = 2024 print(f"제조업체: {car1.make}, 모델: {car1.model}, 년식: {car1.year}") (Output) 제조업체: 현대자동차, 모델: 쏘나타, 년식: 2024 2. 메소드(method) 위에서 작성한 클래스를 수정해서 메소드(method)를 추가해 보겠습니다..

Python 2023.12.05

(파이썬) 리스트에서 중복되지 않은 단어의 개수 세기

리스트(list)에 들어 있는 단어 중에서 중복되지 않은 단어의 개수를 세는 파이썬 코드입니다. 집합(set)의 특징을 이해하면 쉽게 풀 수 있습니다. 파이썬의 집합(set)은 다음과 같은 특징을 갖고 있습니다: 고유한 원소들로 구성: 집합은 중복된 원소를 허용하지 않고, 각 원소는 고유해야 합니다. 순서가 없음: 집합은 원소들 간에 순서가 없습니다. 즉, 원소들은 추가된 순서를 기억하지 않습니다. 가변성(mutable): 집합은 가변 객체이며, 원소를 추가하거나 제거할 수 있습니다. 수학적 연산 지원: 합집합, 교집합, 차집합과 같은 수학적 연산을 지원하여 집합 간의 다양한 연산을 쉽게 수행할 수 있습니다. {} 중괄호 사용: 집합은 중괄호 {}를 사용하여 표현하며, 원소는 쉼표로 구분됩니다. myse..

Python 2023.12.03

(파이썬) tkinter: 마우스 이벤트 처리하기, 그림 그리기

tkinter 모듈을 이용한 윈도우용 응용 프로그램에서 마우스 이벤트 처리에 대해서 설명합니다. 위젯에 마우스 이벤트를 처리하는 방법은 다음과 같습니다. 위젯.bind("", 이벤트_발생시_처리할_함수) 이벤트 지정자에는 다음과 같은 기능이 있습니다. 이벤트 설명 마우스 버튼 마우스 왼쪽 버튼 마우스 가운데 버튼 마우스 오른쪽 버튼 마우스가 움직이면 발생 왼쪽 버튼을 누르면서 움직이면 발생 가운데 버튼을 누르면서 움직이면 발생 오른쪽 버튼을 누르면서 움직이면 발생 더블 클릭하면 발생 버튼을 놓을 때 발생 왼쪽 버튼을 놓을 때 발생 마우스 포인터가 위젯 내부에 진입하면 발생 마우스 포인터가 위젯을 벗어나면 발생 다음 코드는 윈도우 폼을 마우스 버튼으로 클릭하면 어떤 마우스 버튼인지 표시해줍니다. from ..

Python 2023.12.02

(파이썬) 버튼 위젯 크기 변경하기

파이썬에서 버튼 위젯의 크기를 조절하는 방법입니다. 1. 기본적인 버튼의 크기는 버튼의 text 속성에 있는 텍스트의 크기로 설정됩니다. from tkinter import * win = Tk() button1 = Button(win, text='버튼 1') button2 = Button(win, text='버튼 2') button1.place(x=50, y=50) button2.place(x=120, y=50) mainloop() 2. 버튼.place() 함수의 width, height 속성으로 크기 조절하기 from tkinter import * win = Tk() button1 = Button(win, text='버튼 1') button2 = Button(win, text='버튼 2') button..

Python 2023.12.01

(파이썬) SQLite 데이터베이스에 연결해서 테이블 출력하기 SELECT

파이썬에서 SQLite 데이터베이스에 연결해서 테이블의 내용을 가죠오는 코드입니다. 테이블은 이미 생성되어 있다고 가정합니다. 아래의 예제에서 사용하는 student 테이블 생성과 데이터 입력은 아래의 링크를 참고합니다. https://coding-abc.kr/170 (SQLite) 다운로드 및 설치, 데이터베이스와 테이블 생성 여기서는 윈도우용 SQLite를 다운로드 받아 설치합니다. 1. SQLite 다운로드 아래의 링크를 클릭합니다. https://sqlite.org/download.html 2. 아래 그림에 표시된 윈도우용 "sqlite-tools-win32-x86....zip" 파일을 선 coding-abc.kr 파이썬에서 student 테이블의 내용 출력하기 import sqlite3 con ..

Python 2023.11.28

(파이썬) 위젯 배치: pack place grid frame

파이썬에서 위젯을 배치하는 몇 가지 방법이 있습니다. Pack()을 이용해서 상하 또는 좌우로 배치하거나 Grid()를 이용해서 테이블(표) 형식으로 배치할 수 있으며, place()를 이용해서 절대 위치(좌표)에 배치할 수 있습니다. 1. pack()을 이용한 배치 간단하게 위젯을 배치할 수 있습니다. 기본으로 위에서 아래로 배치됩니다. from tkinter import * w = Tk() button1 = Button(w, text='버튼 1', bg='red') button2 = Button(w, text='버튼 2', bg='green') button3 = Button(w, text='버튼 3', bg='blue') button4 = Button(w, text='버튼 4', bg='orange'..

Python 2023.11.26

(파이썬) Label 위젯 이미지 출력하기

레이블(label) 위젯에 이미지를 출력하는 파이썬 코드입니다. from tkinter import * w = Tk() img = PhotoImage(file='c:/temp/13.png') label1 = Label(w, image=img) label1.pack() w.mainloop() 다음 코드는 2 개의 이미지를 가로로 출력합니다. from tkinter import * w = Tk() img1 = PhotoImage(file='c:/temp/12.gif') img2 = PhotoImage(file='c:/temp/13.png') label1 = Label(w, image=img1) label2 = Label(w, image=img2) label1.pack(side=LEFT) label2.pack..

Python 2023.11.25
반응형