💻keep going
이제 슬슬 뭐가 뭔지 모르는 시기가 온 것 같다. 그냥 해야겠다.
__name__ 전역변수
if __name__ == "__main__" :
print(addModule.add(10,20))
👆 만약 지금 실행하고 있는 파일이 실행파일(__main__) 이라면 print내용을 실행해라.
그렇지 않으면 실행하지 마라.


해당 모듈 파일 오른쪽 클릭 -> Refactor -> Move directory -> venv -> Lib -> site - packeges 로 이동


합
listVar = [2, 5, 3.14, 58, 10, 2]
print(f"sum(listVar) : {sum(listVar)}")
최대값 (가장 큰값 찾아줌)
listVar = [2, 5, 3.14, 58, 10, 2]
print(f"sum(listVar) : {max(listVar)}")
최솟값 (가장 작은값 찾아줌)
listVar = [2, 5, 3.14, 58, 10, 2]
print(f"sum(listVar) : {min(listVar)}")
거듭제곱 (계산할 계수, 제곱수)
print(f"pow(13, 2) : {pow(13, 2)}")
print(f"pow(13, 3) : {pow(13, 3)}")
print(f"pow(13, 4) : {pow(13, 4)}")
반올림
print(f"round(3.141592, 2) : {round(3.141592, 2)}")
import math 사용 후
import math
절댓값
print(int(math.fabs(-10)))
print((math.fabs(-0.2142535)))
올림
print(f"math.ceil(5,21) : {math.ceil(5.21)}")
print(f"math.ceil(-5,21) : {math.ceil(-5.21)}")
내림
print(f"math.floor(5,21) : {math.floor(5.21)}")
print(f"math.floor(-5,21) :{math.floor(-5.21)}")
버림
print(f"math.trunc(6, 25) : {math.trunc(6.25)}")
print(f"math.trunc(-6, 25) : {math.trunc(-6.25)}")
최대공약수 : 0이 아닌 두 개 이상의 정수의 공통되는 약수 중에서 가장 큰 수
print(f"math.gcd(12, 30) : {math.gcd(12,30)}")
팩토리얼
print(f"math.factorial(10) : {math.factorial(5)}")
제곱근 : 어떤 수를 2번 곱해서 해당 수가 나온다.
print(f"math.sqrt(6) : {math.sqrt(6)}")
import random 사용 후
import random
random.random() : 0.0에서부터 1.0 사이의 실수 반환
rNum = random.random()
print(rNum)
random.randint(a, b) : a ~ b 숫자중 랜덤으로 반환
rNum = random.randint(100, 200)
print(rNum)
random.sample(sequence, k) : 지정한 숫자만큼의 요소들을 랜덤으로 뽑아 리스트로 반환
sequence : 리스트, 집합, range()등 random의 범위 / k : 반환될 리스트의 크기 입력
rNum = random.sample(range(1, 11), 4) # 범위 : 1 ~ 10까지 / 갯수 4개
print(rNum)
import time 사용 후
import time
lt = time.localtime() : 현재 시스템의 시간 반환
print(lt)
print(f"lt.tm_year : {lt.tm_year}") # 연도만 구하고 싶을 때
print(f"lt.tm_mon : {lt.tm_mon}") # 월만 구하고 싶을 때
print(f"lt.tm_mday : {lt.tm_mday}") # 일만 구하고 싶을 때





# 개 정보를 출력하는 함수
def print_dog_info(name, breed, age):
print(f"개 이름: {name}")
print(f"개 종류: {breed}")
print(f"개 나이: {age}")
# 고양이 정보를 출력하는 함수
def print_cat_info(name, breed, age):
print(f"고양이 이름: {name}")
print(f"고양이 종류: {breed}")
print(f"고양이 나이: {age}")
# 개 정보 출력
print_dog_info("뽀삐", "푸들", 3)
# 고양이 정보 출력
print_cat_info("나비", "샴", 2)
# 동물 클래스 정의
class Animal:
def __init__(self, name, breed, age):
self.name = name
self.breed = breed
self.age = age
def print_info(self):
print(f"동물 이름: {self.name}")
print(f"동물 종류: {self.breed}")
print(f"동물 나이: {self.age}")
# 개 객체 생성
dog = Animal("뽀삐", "푸들", 3)
dog.print_info()
# 고양이 객체 생성
cat = Animal("나비", "샴", 2)
cat.print_info()


class TemCls:
def __init__(self, n, s):
self.number = n
self.str = s
def printClsInfo(self):
print(f"self.number : {self.number}")
print(f"self.str : {self.str}")
tc1 = TemCls(10, "Hello")
tc2 = tc1
tc1.printClsInfo()
tc2.printClsInfo()
# 확인해보기
print()
tc2.number = 3.14
tc2.str = "Bye"
tc1.printClsInfo()
tc2.printClsInfo()
# tc1 와 tc2 정보가 동일하게 변경된다.
결과 :
self.number : 10
self.str : Hello
self.number : 10
self.str : Hello
self.number : 3.14
self.str : Bye
self.number : 3.14
self.str : Bye

import copy
tc1 = TemCls(10, "Hello")
tc2 = copy.copy(tc1)
tc1.printClsInfo()
tc2.printClsInfo()
tc2.number = 3.14
tc2.str = "Bye"
# 확인해보기 tc1 내용은 그대로이고 tc2 내용만 바뀐다.
print()
tc1.printClsInfo()
tc2.printClsInfo()
결과 :
self.number : 10
self.str : Hello
self.number : 10
self.str : Hello
self.number : 10
self.str : Hello
self.number : 3.14
self.str : Bye
✔ import sys 👉 시스템의 대한 간략한 정보를 갖고있는 모듈
✔ sys.path 👉 모듈들이 들어있는 경로를 쭉 나열
ex)
import sys
print(sys.path)
결과 :
['', '/usr/lib/python39.zip', '/usr/lib/python3.9', '/usr/lib/python3.9/lib-dynload', '/home/user/.local/lib/python3.9/site-packages', '/usr/local/lib/python3.9/dist-packages', '/usr/lib/python3/dist-packages']
✔ ctrl + shift + z = 다시실행(ctrl + z 반대)