본문 바로가기

코딩

(88)
변수 타입 어노테이션 변수 타입 어노테이션 : 파이썬 3.5부터 도입된 기능으로, 변수의 예상 타입을 명시하는데 사용된다. 주로 코드의 가독성을 높이고, 정적 타입 검사 도구(예:mypy)를 사용하여 타입 오류를 사전에 잡아내기 위한 목적으로 사용된다. 타입 어노테이션은 실제로 변수의 타입을 강제하는 것이 아니라, 개발자가 변수가 어떤 타입을 가져야 할 것으로 예상하는지 명시하는 것이다. 기본 타입 어노테이션 name = '김사과' name: str = '김사과' age = 10 age: int = 10 height = 160.5 height: float = 160.5 is_lover = True is_lover : bool = True print(name) print(type(name)) 김사과 리스트, 튜플, 딕셔너리, ..
파이썬 모듈 모듈 : .py 확장자를 가진 파일에 코드를 작성하면 모듈을 만들 수 있는데, 단순한 함수 뿐만 아니라 변수, 클래스 등도 포함할 수 있으며, 다른 스크립트에서 import 구문을 사용하여 가져올 수도 있다. import math_tools print(math_tools.PI) 3.141592653589793 print(math_tools.add(10, 3)) print(math_tools.subtract(10, 3)) 13 7 #모듈 클래스 circle = math_tools.Circle(5) print(circle.area()) 78.53981633974483 #필요한 속성, 클래스만 가져오기 from math_tools import PI, Circle print(PI) circle = Circle(..
파일 입출력 파일 열기 : 파일을 열려면 open 함수를 사용한다. f = open("파일명", "모드") 파일명 : 열고자 하는 파일의 이름이나 경로 모드: 파일을 어떻게 열 것인지를 지정 r: 읽기 모드 (기본값) w:쓰기 모드 (파일이 있으면 덮어쓰기) a: 추가 모드 (파일의 끝에 내용을 추가) b: 바이너리 모드 (텍스트가 아닌 바이너리 데이터를 읽고/쓸 때 사용) +: 읽기와 쓰기 모드 파일 쓰기 f = open('example.txt', 'w') f.write('Hello, Python!\n') f.writelines(['Line1\n', 'Line2\n']) f.close() # 꼭 써야함! f = open('data.txt', 'wt') for i in range(10): f.write('파일 열기 ..
파이썬 과제 (4). 주민등록번호 유효성 검사 주민등록번호 유효성 검사 프로그램을 만들어보자 - 각 자리에 2, 3, 4, 5, 6, 7, 8, 9, 2, 3, 4, 5를 곱하고 더함(마지막 주민등록번호 숫자는 제외) 0+0+4+0+6+7+24+0+12+24+20+5 = 102 - 11로 나눈 나머지 값을 구함 102 % 11 = 3 - 11에서 위 값을 뺌 11 - 3 = 8 - 위 결과가 2자리인 경우 10으로 나눈 나머지 값을 구함 - 결과값이 마지막 주민등록번호와 일치하면 유효한 주민번호 단, 클래스로 설계하고 객체를 이용하여 프로그램을 동작 class Jumin: def __init__(self, jumin): self.jumin = jumin # 입력된 주민등록번호를 객체의 속성으로 설정 def validate(self): majimak ..
파이썬의 예외처리 예외 : 예외(Exception)는 프로그램 실행 중 발생할 수 있는 예상치 못한 문제 또는 오류 상황을 의미. 예외가 발생하면 프로그램은 중단되기 때문에 이를 적절하게 처리하여 중단을 방지하거나 오류에 대한 정보를 사용자에게 제공해야한다. print(10 / 3) print(5 / 0) print(4 / 2) 3.3333333333333335 --------------------------------------------------------------------------- ZeroDivisionError Traceback (most recent call last) in () 1 print(10 / 3) ----> 2 print(5 / 0) 3 print(4 / 2) ZeroDivisionError:..
스페셜 메서드 스페셜 메서드 : 파이썬의 스페셜 메서드(또는 매직 메서드라고도 불림)는 더블 언더스코어(__)로 시작하고 끝나는 메서드 이름을 갖는다. 이 메서드들은 특정 구문이나 내장 함수를 사용할 때 파이썬 인터프리터에 의해 자동으로 호출된다. class Book: def __init__(self, title): self.title = title book = Book('미친듯이 재밌는 파이썬') print(book) print(str(book)) class Book: def __init__(self, title): self.title = title def __str__(self): return self.title book = Book('미친듯이 재밌는 파이썬') print(book) print(str(book)) ..
파이썬 상속 상속 : 상속은 한 클래스의 속성과 메서드를 다른 클래스에 전달하는 기능을 의미한다. 상속을 사용하면 기존의 코드를 재사용하고 확장할 수 있다. 기본적으로 파이썬의 모든 클래스는 object라는 기본 클래스로부터 상속받는다. class Parent: pass class Child(Parent): pass class Animal: def __init__(self, name, age): self.name = name self.age = age def eat(self, food): print(f'{self.name}은(는) {food}를 먹습니다') def sleep(self, hour): print(f'{self.name}은(는) {hour}시간 동안 잠을 잡니다.') animal = Animal('동물',..
객체지향과 클래스2 클로저 : 함수와 그 함수가 참조하는 외부 변수(또는 자유 변수) 사이의 관계를 나타낸다. 클로저는 함수의 내부에서 정의된 함수로, 내부 함수가 외부 함수의 변수에 접근할 수 있고, 외부 함수는 내부 함수를 반환할 수 있다. 이로 인해 함수와 그 함수가 참조하는 상태(변수)를 함께 저장하고 유지할 수 있다. def mul2(n): return n * 2 print(mul2(10)) print(mul2(5)) 20 10 def mul5(n): return n * 5 print(mul5(10)) print(mul5(5)) 50 25 class Mul: def __init__(self, m): self.m = m def mul(self, n): return self.m * n mul2 = Mul(2) prin..