split
myemail = 'abc@sparta.co'
myemail 변수에 abc@sparta.co 문자열을 할당.
문자열에서 sparta만 출력하도록 코드를 짜보자.
result = myemail.split('@')[1]
.split('어떤 기호')를 하게 되면 그 기호를 기준으로 요소를 나누어 리스트 형태로 저장.
['abc', 'sparta.co'] 라는 리스트에서 우리는 sparta가 필요하므로 [1]을 추가하여 1번째 인덱스를 가져오는 것.
result = myemail.split('@')[1].split('.')[0]
같은 방법으로 다시 split을 사용하여 이번에는 . 기호를 기준으로 sparta.co를 나눠주고 0번째 인덱스인 sparta를 결과적으로 result에 넣게 된다.
이후 print(result)를 통해 결과를 출력하면 완료.
enumerate, break
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 i, person in enumerate(people):
name = person['name']
age = person['age']
print(i, name, age)
if i > 3:
break
enumerate로 요소의 순서를 i에 할당해 출력함으로써 'i가 3보다 클 때까지 출력해라' 라는 제한을 걸 수 있음.
숫자 0부터 할당됨.
결과적으로 4번 인덱스의 ben 정보까지 출력을 한 뒤 마지막에 조건문이 나오기 때문에 그제서야 조건문 탈출.
반복의 제한 범위를 간단히 설정한다는 점에서 많은 데이터 위주로 반복할 때 유용하게 쓸 수 있음.
f-string
scores = [
{'name':'영수','score':70},
{'name':'영희','score':65},
{'name':'기찬','score':75},
{'name':'희수','score':23},
{'name':'서경','score':99},
{'name':'미주','score':100},
{'name':'병태','score':32}
]
for s in scores:
name = s['name']
score = s['score']
print(f'{name}의 점수는 {score}점 입니다.')
print(name+'의 점수는 '+str(score)+'점 입니다.')라고 할 수도 있지만, 한 문장에 사용되는 변수가 아주 많아지는 경우에는 헷갈릴 수 있음.
이럴때 출력할 문장 앞에 f를 추가하고, {} 괄호 안에 앞에서 설정한 변수명만 넣어주면 됨.
파일 불러오기(함수)
from main_func import *
from 함수를 정의한 파일명 import *
여기서 *은 전부라는 뜻, 즉 main_func라는 파일 안에 정의된 모든 함수를 가져온다는 뜻.
from main_func import say_hi_to
이렇게 say_hi_to라는 함수 하나만 가져올 수도 있다.
map, filter(lambda)
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}
]
result = map(lambda x: ('성인' if x['age'] > 20 else '청소년'), people)
people을 돌면서 요소를 하나하나 x에 넣고, 조건문을 돌려 result에 결과를 넣는 것.
result = filter(lambda x: x['age'] > 20, people)
people을 돌면서 요소를 하나하나 x에 넣고, x의 age 값이 20보다 큰 경우만 result에 넣는 것.
꿀팁
shift + tab으로 한칸 앞으로 당길 수 있음.
오늘의 회고
새로운 강의를 새로운 마음으로 시작했다.
새로운 팀원분들도 만났는데 다들 진짜 조금 쉬고 열심히 하셔서 놀랐다. 진도도 너무 빠르시고.
덕분에 같이 집중할 수 있었다.
내일의 목표는 개인 일정 잘 보내고 최대한 남은시간에 복습하기
'매일 TIL' 카테고리의 다른 글
[내일배움캠프 9일차] Updown 게임, 가위바위보 게임 (0) | 2024.07.02 |
---|---|
[내일배움캠프 8일차] python 심화 (0) | 2024.07.01 |
[내일배움캠프 4일차] Python 가상 환경 생성, 스크래핑(크롤링), Flask (0) | 2024.06.27 |
[내일배움캠프 3일차] JavaScript, JQuery, Fetch, Python 기초 (0) | 2024.06.26 |
[내일배움캠프 2일차] 멜로디쉐어 마무리, JavaScript 문법, Git&GitHub (0) | 2024.06.25 |