🗓️ 23.10.09
- 함수 밖에 반복문 사용하기


- 함수 연습


잘 실행이 되었지만 문제가 있었다.
print(f"") 부분을 함수 밖에 설정해 두었을 땐 group_name이 존재하지 않아 실행되지 않는다고 했다. 반드시 범위를 신경 써야 할 것 같다!
- 함수 요약
• 함수란 특정한 기능을 따로 뷴리해놓은 것이가
• 함수를 사용하면 코드를 논리적인 단위로 구성할 수 있다.
• 함수를 사용할 때에는 def 키워드를 사용한다
• return을 이용해 함수에서 계산한 값을 반환할 수 있다.
- 함수 인자, 복습
🤔 함수의 인자, 매개변수란?
매개변수는 함수가 호출될 때 전달되는 값을 받는 변수이다. 즉! 함수에 필요한 입력값을 제공하기 위해 사용하는 것이다.
<일반적인 함수>


<매개변수를 활용한 함수>


- 함수의 인자를 넣어 함수 선언하기
<경우 1>


<경우 2>


🗓️ 23.10.10
- 함수 인자의 특성
• 인자의 유효범위(scope)
해당 인자와 변수는 함수 내부에서만 유효하게 사용할 수 있다. 즉, 함수 내에서 정의된 변수는 함수 외부에서 접근할 수 없다는 것이다.
• 인자의 순서
매개변수 A와 B를 만들었다고 가정할 때, 함수 호출 부분에서 B와 A의 순서로 호출하면 안 된다.
• 키워드 인자
함수를 정의할 때 지정해 둔 순서를 지키지 않아도 된다. 왜!? 변수의 이름을 가지고 매칭하기 때문에!

인자를 매개변수의 이름과 함께 전달하는 방식이다. 지금까지는 변수의 이름을 함께 전달하지 않고 값만 전달했는데! 키워드 인자의 경우 이름과 값을 함께 전달해야 하는 것이다.
* 의미를 명확히 전달할 수 있다는 장점과 순서에 구애받지 않고 명확하게 값을 전달할 수 있다는 장점이 있다.
• 위치 인자
함수를 정의할 때 지정해 둔 순서대로
• 기본 인자
기본 인자는 함수 정의 시 인자에 기본 값을 지정하는 것이다. 함수 호출 시 해당 인자에 값이 전달되지 않으면 기본값이 사용되고 이를 통해 인자를 선택적으로 사용할
수 있는 것이다. 또한 함수 호출 시에 기본 값을 변경할 수도 있다.
- 퀴즈: 인자가 포함된 함수 만들기
장비의 상태는 status로 확인할 수 있다.



어렵다...ㅋㅋ
🗓️ 23.10.12
- 클래스
프로그래밍에서의 클래스는 사람이나 동물과 같은 그룹을 정의하는 것이다. 즉, 데이터와 함수를 함께 묶어 사용하게 해주는 것이다. 데이터는 클래스의 특징이나 상태를 나타내고, 함수는 그 클래스에 속하는 객체가 될 수 있는 동작이다.
class cat:
def_init__(self, name, age):
self.name = name
self.age = age
def meo(self)
print(self.name)
💡 클래스를 왜 사용할까?
클래스를 사용하면 우리는 이러한 특징과 동작을 가진 고양이라는 객체를 만들 수 있어요. 이 객체는 클래스의 정의에 따라서 특징과 동작을 가지게 되는 거죠.
예를 들어, '나비'라는 고양이 객체를 만들면, 그 고양이는 이름이나 나이와 같은 특징을 가지고, 먹기나 잠자기와 같은 동작을 할 수 있게 되는 거예요.
이렇게 클래스를 사용하면 여러 객체를 만들어서
각 객체마다 다른 특징과 동작을 가질 수 있어요.
클래스를 사용하면 코드를 구조화하고 재사용성을 높일 수 있어서 프로그래밍을 효율적으로 할 수 있게 도와줘요.
- 클래스와 객체의 관계
클래스는 사람이나 동물과 같은 그룹을 정의하는 규칙이다. 반면 객체는 클래스에 의해 생성된 실체로서 클래스에 정의된 속성과 동작을 가진다.
ex) 수많은 가전제품이 있다!
가전제품은 클래스 / 삼성 스마트 TV는 가전제품이라는 객체의 의해 만들어진 실체!
클래스에는 브랜드, 모델, 크기와 같은 공통 성질이 있고,
객체에는 실제 값을 가지고 있는 것이라고 할 수 있다.
객체는 클래스의 인스턴스이며, 클래스에서 정의한 속성과 동작을 그대로 상속한다.
- 클래스 인스턴스 생성하기
# 'Person' 클래스 정의
class Person:
def _init__(self, name):
self.name = name
# 'Person' 클래스의 인스턴스 생성
person = Person("John")
# 인스턴스 속성에 접근하여 값 출력
print (person.name)
위의 코드에서 Person 클래스를 정의하고,
_init_ 메서드를 사용하여 인스턴스 변수 name을 초기화하고 있습니다. 그리고 Person 클래스의 인스턴스인 person을 생성하고, 인스턴스 속성인 name에 접근하여 값을 출력하는 예제입니다.
init 메서드(함수)는 변수가 가질 속성을 정해주는 것!
- 클래스 속성
class Person:
species = "human"
모든 Person의 객체는 human의 특성을 갖게 되는 것.
객체가 만들어질 때마다 초기화되는 것이 아니라 모두 같은 값을 같은 것.
- 클래스와 클래스가 아닌 형식으로 만들어보기
클래스 형태


클래스가 아닌 형태


💡 클래스를 사용한다고 전부 간편한 건 아니다!
클래스는 객체지향 개념에서 사용할 때 유용하고, 그룹의 공통적인 행동을 구조화하는 경우에 더욱 유리하고 재사용성이 높은 것을 알 수 있다!
🗓️ 23.10.13
근무 이슈로 공부 못함..
🗓️ 23.10.14
- 퀴즈


- 라이브러리
라이브러리란?
프로그래밍에서 재사용 가능한 코드의 집합이다. 일반적으로 자주 사용되는 기능이나 작업을 수행하기 위한 함수, 클래스, 상수 등을 포함하고 있다.
프로그래밍에서의 라이브러리는 도서관과 같다.
1) 다 영한 책이 있다.
도서관에는 수학, 과학 등 다양한 책이 있듯이, 라이브러리에도 파일처리, 네트워크 통신, 데이터베이스 연동 등 다양한 작업을 수행하는 라이브러리가 있다.
2) 책을 빌려 읽을 수 있다.
책을 빌려 읽듯, 라이브러리를 가져와 사용할 수 있다.
3) 지식을 공유할 수 있다.
도서관은 다른 사람들과 공유하는 장소이다. 마찬가지로 라이브러리도 개발자들이 공유하며 협업하는 공간이다
- 라이브러리 가져오기 및 사용하기
import문을 사용해서 라이브러리를 가져올 수 있다.
- datetime 실습하기


import datetime 라이브러리를 import 해주지 않으면 원하는 라이브러리를 불러올 수 없다. 반드시 import 하도록!


시간의 경우 시:분:초 단위로 작성하면 된다.
- timedelta


날짜 또는 시간의 차이 계산을 비롯해
시간의 이동(7시간 이후는 몇 시인가),
시간의 간격(어떤 간격이 더 긴지, 짧은지)을 확인할 수 있다.
- 날짜와 시간 포맷팅

반드시 형태에 맞추어 작성해야 한다!
% Y-%m-%d : 년도 월 일 -> 순서로 작성해야 하고
% H:%M:%S : 시간 분 초 -> 순서로 작성해야 한다.
- random 실습하기: randint



- random 실습하기: choice



🗓️ 23.10.15
- 퀴즈: datetime 예제


우선, 현재의 연도, 날짜, 시간까지 나온 걸 확인할 수 있다.
다음!


. year을 입력하면 연도만 출력되는 것을 알 수 있다.
- 퀴즈: 요일 출력 strftime("% A") 메서드


- 퀴즈: 현재 시간 출력 strftime("% H")

- 퀴즈: random.randint()





마지막 강의만 들으면 파이썬 강의도 끝이 난다.
정말 바쁘고 정신없던 한 달 동안 꾸준히 시간 내어 공부한 나 자신을 칭찬하고 싶다. 파이썬을 처음 배운 거라 걱정도 많았지만 직접 실습하며 그런 걱정이 조금은 사라진 것 같다. 이번주도 파이팅...!
'Computer Science > Python' 카테고리의 다른 글
[Python] 군대에서 공부하기 Week5 (1) | 2023.10.17 |
---|---|
[Python] 군대에서 공부하기 Week3 (1) | 2023.10.08 |
[Python] 군대에서 공부하기 Week2 (0) | 2023.10.02 |
[Python] 군대에서 공부하기 Week1 (2) | 2023.09.24 |