스파르타코딩클럽 내일배움캠프 TIL7

한재창·2022년 11월 8일
0

Python

문자열

  • 메소드 : 특정 자료형 뒤에 .을 붙이고 쓰는 내장 함수

replace : 특정 문자를 다른 문자로 바꾸기

txt = '서울시-마포구-망원동'
print(txt.replace('-', '>')) # '서울시>마포구>망원동'

split('문자열') : 특정 문자열로 자르고 싶을 때 사용

myemail = 'abc@sparta.co'

domain = myemail.split('@')[1].split('.')[0]
print(domain)

slice : 문자열의 일부를 잘라낼 때 사용

f="abcdefghijklmnopqrstuvwxyz"

f[4:15]  # efghijklmno           f[4]부터 f[15] 전까지, 총 15-4=11개!

f[8:]    # ijklmnopqrstuvwxyz    f[8]부터 끝까지, 앞의 8개 빼고!
f[:7]    # abcdefg               시작부터 f[7] 전까지, 앞의 7개!

f[:]     # abcdefghijklmnopqrstuvwxyz  처음부터 끝까지

반복문

  • for
fruits = ['사과', '배', '감', '귤']

for fruit in fruits:
    print(fruit)
    # 사과 ~ 귤 까지 한개씩 출력된다.
  • 사람의 나이 출력하기
people = [
    {'name': 'bob', 'age': 20},
    {'name': 'carry', 'age': 38},
    {'name': 'john', 'age': 7},
    {'name': 'smith', 'age': 17},
    {'name': 'ben', 'age': 27},
    {'name': 'bobby', 'age': 57},
    {'name': 'red', 'age': 32},
    {'name': 'queen', 'age': 25}
]

for person in people:
	name = person['name']
    age = person['age']
    if age > 20:
    print(name)
    # carry, ben, bobby, red, queen
  • enumerate, break : 요소의 순서를 넣어주어 내가 원하는 순서까지만 출력할 수 있다.
fruits = ['사과', '배', '감', '귤','귤','수박','참외','감자','배','홍시','참외','오렌지']

for i, fruit in enumerate(fruits):
    print(i,fruit)
    
for i, fruit in enumerate(fruits):
    print(i, fruit)
    if i == 4:
        break
        # i가 4일때 출력이 멈춘다.
  • 리스트에서 짝수만 출력하는 함수 만들기 : 나머지가 0이면 짝수이기 때문에 나머지가 0이라면 num을 출력해준다.
num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]

for num in num_list:
    if num % 2 == 0:
        print(num)
  • 리스트에서 짝수의 개수를 출력하기 : 변수 count는 num이 짝수라면 1씩 증가한다.
num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]
count = 0

for num in num_list:
    if num % 2 == 0:
        count += 1

print(count)
  • 리스트 안에 있는 모든 숫자 더하기 : 변수 result에 한개씩 출력되는 num의 값을 하나하나 더해준다.
num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]
result = 0

for num in num_list:
    result += num

print(result)
  • 리스트 안에 있는 자연수 중 가장 큰 숫자 구하기 : num이 max_value보다 크면 max_value에 num의 값을 넣어준다. 작을 때는 원래 값을 유지하므로 결국에는 가장 큰 숫자가 출력된다.
num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]
max_value = 0

for num in num_list:
    if num > max_value:
			 max_value = num

print(max_value)

함수

  • 주민등록번호를 입력받아 성별 출력하기
def check_gender(pin):
    num = int(pin.split('-')[1][0])
    if num % 2 == 0:
        print('여성')
    else:
        print('남성')

my_pin = "200101-3012345"
check_gender(my_pin)

튜플, 집합

  • 튜플 : 리스트와 비슷하지만 불변인 자료형이며 순서가 존재한다.
a = (1,2,3)
a[0] = 99
  • 집합 : 집합을 구현, 중복이 제거 된다.
a = [1,2,3,4,5,3,4,2,1,2,4,2,3,1,4,1,5,1]
a_set = set(a)

print(a_set) # {1,2,3,4,5}

# 교집합, 합집합, 차집합
a = ['사과','감','수박','참외','딸기']
b = ['사과','멜론','청포도','토마토','참외']

a_set = set(a)
b_set = set(b)

print(a_set & b_set) # {'참외', '사과'}
print(a_set | b_set) # {'감', '딸기', '수박', '사과', '참외', '청포도', '토마토', '멜론'}
print(a_set - b_set) # {'감', '딸기', '수박'}

f-string

  • 자바스크립트에서 템플릿 리터널과 같은 개념
shoesPrice = 200000
print(f'이 신발의 가격은 {shoesPrice}원입니다')
# 이 신발의 가격은 200000원입니다

예외처리

  • try - except문 : 에러가 있어도 건너뛰게 할 수 있다.
    try문에 실행할 코드를 작성하고 에러가 났을 때는 except의 코드가 실행된다.
people = [
    {'name': 'bob', 'age': 20},
    {'name': 'carry', 'age': 38},
    {'name': 'john', 'age': 7},
    {'name': 'smith', 'age': 17},
    {'name': 'ben', 'age': 27},
    {'name': 'bobby'},
    {'name': 'red', 'age': 32},
    {'name': 'queen', 'age': 25}
]

for person in people:
    try:
        if person['age'] > 20:
            print (person['name'])
    except:
        name = person['name']
        print(f'{name} - 에러입니다')
# carry
# ben
# bobby - 에러입니다
# red
# queen

간단하게 코드 작성

  • if문 삼항연산자 : (참일 때 값) if (조건) else (거짓일 때 값)
num = 3
result = "짝수" if num%2 == 0 else "홀수"

print(f"{num}{result}입니다.") # 3은 홀수입니다.
  • for문
a_list  = [1, 3, 2, 5, 1, 2]

b_list = []
for a in a_list:
    b_list.append(a*2)

print(b_list) # [2, 6, 4, 10, 2, 4]

# 위에 코드와 같다.
b_list = [a*2 for a in a_list]

print(b_list) # [2, 6, 4, 10, 2, 4]
profile
취준 개발자

0개의 댓글

관련 채용 정보