파이썬 기초

장서연·2021년 6월 18일
# 클래스 간의 상호작용
class Student:
    def __init__(self, name, age, grade):
        self.name = name
        self.age = age
        self.grade = grade

    def get_grade(self):
        return self.grade
class Course:
    def __init__(self, name, max_students):
        self.name = name
        self.max_students = max_students
        self.students = []    
    def add_student(self, student):
        if len(self.students) <= self.max_students:
            self.students.append(student)
            return True
        return False
    def get_average_grade(self):
        sum = 0
        for student in self.students:
            sum += student.get_grade()
        return sum / len(self.students)
    def show_student_list(self):
        print(self.students)

s1 = Student('아이언맨', 19, 95)
s2 = Student('스파이더맨', 19, 75)
s3 = Student('헐크', 19, 85)
s3 = Student('앤트맨', 19, 85)

course = Course('과학', 2)

course.add_student(s1)
course.add_student(s2)
course.add_student(s3)

course.show_student_list()

print(course.get_average_grade())

기초 문법

if 4 in [1,2,3,4]: print('4가 있습니다')
lst = [1,2,3,4]

tup = (1,2,3,4)

# 딕셔너리 (맵)
dic = {'name':'홍길동', 'age': 16}

# 집합
s = set([1,2,3,1,6,7])
print(s)

# 문자열
str1 = "python's\n 파이팅"
print(str1)
print(str1[-3:])

# 문자열 포맷
a = 100
b = 200
total = a+b
print("{}과 {}의 합은 {}입니다".format(a,b,total))
print("%d과 %d의 합은 %d 입니다"%(a,b,total))

# 산술연산자
n1 = 10
n2 = 7
print(n1/n2) #1.4285714285714286
print(n1//n2) # 1
print(n1%n2)# 3

num = 489
print(num // 100 * 100)
print(num - (num % 100))
print(int(num / 100)*100)

# 시분초로 바꾸기
s = 3723 # 3723초
m = s // 60 % 60
h = s // 60 // 60
s = s % 60

print("{}시 {}분 {}초".format(h, m, s))

# 함수화
def toTime(s):
  m = s // 60 % 60
  h = s // 60 // 60
  s = s % 60
  return h, m, s


h, m, s = toTime(3723)
print("{}시 {}분 {}초".format(h, m, s))

# 리스트 복사시 주의
a = [1,2,3]
b = a
print(a is b)
print(id(a), id(b))

b = a[:]
print(a is b)
print(id(a), id(b))

a = [ x**2 for x in range(1,6)]
print(a)

# 리스트 array에 4,7를 ‘d’, ‘e’, ‘f’, ‘g’로 바꾸시오.
array = [1, 2, 3, 4, 5, 7]
array[3:] = ['d', 'e', 'f', 'g']
# array[3] = ['d', 'e', 'f', 'g']

print(array)

# 튜플
if ('x' in "xyz"): # 문자열도 리스트임!
  print('true')

if 'x' in ('x', 'y', 'z'):
  print('true')

if 'x' in ['x', 'y', 'z']:
  print('true')


# <class '__main__.Dog'>
# __main__ 모듈의 Dog라는 클래스 라는 뜻임

dict1 = {}
for i in [1,2,3,3,4,4,6]:
  if i in dict1:
    dict1[i] += 1
  else:
    dict1[i] = 1
print(dict1)
# 값이 몇 개 들어있는지 확인하는 프로그램. 많이 쓰는 로직임!

0개의 댓글