본문 바로가기
파이썬

파이썬 기초 3️⃣ [메소드, 튜플, 모듈, 클래스, 인스턴스, OOP]

by Ele(단단) 2021. 6. 21.
반응형

📌 개인적으로 파이썬의 기초라고 생각하는 것

✏️ 리스트, 시퀀스, 스트링 메소드 

list.pop(i)
# 인덱스 i의 원소를 제거 후 그 원소를 반환
# (괄호를 비울 시 마지막 원소)

my_list = [1, 2, 3, 4, 5]
print(my_list.pop(0)) # 1
print(my_list.pop()) # 5
------------------------------------------
seq.count(d)
#시퀀스 내부의 자료 d의 개수를 반환

my_seq = [2, 2, 2, 4, 4]
print(my_seq.count(2)) # 3
------------------------------------------
str.split(c)
# c를 기준으로 문자열을 쪼개서 리스트를 반환
# (괄호를 비울 시 공백)

my_str = “1 2 3 4 5”
print(my_str.split()) # [‘1’, ‘2’, ‘3’, ‘4’, ‘5’]
element = “Na,Mg,Al,Si”
print(element.split(‘,’)) # [‘Na’, ‘Mg’, ‘Al’, ‘Si’]
------------------------------------------

str.join(list)
# str을 기준으로 리스트를 합쳐서 문자열을 반환
# (괄호를 비울 시 공백)

my_list = [‘a’, ‘p’, ‘p’, ‘l’, ‘e’]
print(‘’.join(my_list)) # apple
friend = [‘Pat’, ‘Mat’]
print(‘&’.join(friend)) # Pat&Mat

 

튜플(Tuple) :  🚫 변하지 않는다 + 여러 자료를 함께 담을 수 있는 자료형

# 시퀀스 자료형으로
# Index를 이용한 인덱싱, 슬라이싱이 가능

my_tuple = (‘t’, ‘w’, ‘i’, ‘c’, ‘e’)
print(my_tuple[1]) # ‘w’
print(my_tuple[2:4]) # (‘i’, ‘c’)
------------------------------------------

# in 연산자로 Tuple 안에 원소 확인
# len() 함수로 Tuple의 길이 확인

my_tuple = (‘t’, ‘w’, ‘i’, ‘c’, ‘e’)
print(‘t’ in my_tuple) # True
print(len(my_tuple)) # 5

 

딕셔너리(Dictionary) : {key : value}의 형식 : key를 알면 value를 알 수 있음

person = {‘name’:‘Michael’, ‘age’:10 }
print(person[‘name’]) # Michael
print(person[‘age’]) # 10

# person = Dictionary
# ['name'], ['age] => key
# Michael, 10 => value
-----------------------------------------
# Dictionary에서 자료를 추가하기
person[‘hometown’] = Seoul

# del 함수로 Dictionary의 원소 삭제
del person[‘age’]

# Key는 변할 수 없는 자료형 → 리스트는 안되고, 튜플은 된다
datas = {[1, 2, 3]:‘Alphabet’} # Error
datas = {(1, 2, 3):‘Number’} # OK

 

함수 

  • 함수는 특정 기능을 수행하는 코드의 모임
  • 내장 함수와 외장 함수
  • 전역 변수와 지역 변수의 차이
  • 메서드의 특징
def plusDouble(a, b):
  c = a+b
  return 2*c

print(plus(3, 4)) # 14
# 매개변수 a,b를 받아서 더하고, 2배를 해준 결과를 반환하는 함수

   

모듈

  • 모듈은 특정 목적을 가진 함수, 자료의 모임
  • 원하는 내용이 담긴 모듈을 .py로 제작 가능
  • 패키지는 모듈을 폴더로 구분하여 관리하는 것

 

클래스 : 객체를 만들 수 있는 틀

  • 필드 : 객체가 가지고 있는 성질 = 객체가 가지고 있는 변수
  • 메서드 : 객체가 할 수 있는 행동 = 객체가 할 수 있는 함수 (첫번째 매개변수는 무조건 self)
class Poxxmon:
  p_name = “”
  p_hp = 0
  p_type = “”
  def skill(self):
    pass
    
# 포x몬 클래스 생성

인스턴스 :  객체를 만들 수 있는 틀(클래스)로 찍어낸 객체

pipi = Poxxmon()
pipi.name # Bob
pipi.age # 10
pipi.exercise() # 스쿼시!

# pipi라는 인스턴스를 생성

 

 👏 클래스, 인스턴스, 상속, 다형성, 캡슐화를 통해 객체지향 프로그래밍을 하는 이유?

코드의 재사용을 쉽게하고, 우리의 실생활을 코드로 더 잘 나타낼 수 있기 때문이다
반응형

댓글