오늘 한 일
- 개인과제 마무리 및 제출
- 튜터님 해설 세션
- 오후 특강
- TIL 작성
오늘의 리뷰
1. pass/continue/break
(1) pass
- 결론은 pass는 반복문에서는 아무런 영향이 없음
- 특정한 경우에 주로 사용됨 => 1. 조건문에 넣어줄 조건이 없을 때 2. class 선언시에 초기 조건을 아직 주지 못했을 때 but, 코드 동작확인을 위해 실행시에 오류를 방지하기 위해서 사용함
(2) continue
- 위의 코드에서는 짝수인 경우(=조건문의 조건 성립시)에 continue가 실행됨
- 그 결과, 홀수는 모두 바로 print되지만, 짝수는 continue까지만 실행되고 다시 for문의 처음으로 돌아감(=>다음 숫자로)
(3) break
- 위의 코드에서 1부터 반복하다가 짝수인 2가 if문의 조건을 만족하므로 break가 실행됨. 그러면 아예 for문(=for 루프) 자체를 벗어나므로 마지막 print('done!!')문까지만 실행되고, 다음 숫자로 넘어가지 않음.
- break시에는 가장 가까운 '루프'를 종료함. 즉, 여기서 if문은 조건문일 뿐이므로 break와는 무관함.
2. 자료형 확인
3. 해설세션
(1) 과제3
- 변수명은 길더라도 알아보기 쉽게 쓰는 게 좋음 (ex.member_instance _짱구)
- => 왜냐하면 시간이 지나서 보면, 내가 짠 코드도 왜 이렇게 짰지?..하니까!
- filter(lambda)보다는 애초에 db에서 가져올 때부터 filter_by()와 count()를 활용하는 게 좋음.
- => 후자_데이터가 아주아주 많아도 괜찮고, 서버가 터질 염려도 없기 때문.
- => 전자는 리스트를 하나하나 가져와서 filter하는 방식임. 데이터가 1000개 정도라면 그렇게 해도 무방하지만, 데이터가 몇 만 단위가 넘어가면 그런 방식은 비효율적임
- 2중for문_pass/continue/break 활용 => Post class의 객체 생성시.
- html에서 파이썬 서버로부터 넘겨받은 데이터를 표시하는 것은_파이썬 문법은 아니고, flask가 쓰는 jinja의 문법임.
- => 즉, 딕셔너리임에도 .으로 호출하는 등_파이썬 문법과는 다름.
(3) 과제4
- html용어_thead와 tbody
- => table head = th, table row = tr
- => id값은 고유하고 특정되어야 함. 그 특징 때문에 primary key를 보통 id에 줌. 그래야 row가 특정가능함
- primary key는 유일해야 하므로, 이것을 개발자 본인이 통제하긴 어려움
- => sqldb 등 왠만한 db들은 다 id를 자동 생성(자동 증가)해줌.
- class는 classification의 뜻. 즉, 같은 클래스 및 인스턴스 변수들을 가지는 것들을 분류하고, 카테고리한 것
- => 이렇게 미리 규격화 해놨기 때문에_활용이 쉬운 것!!
posts = []
posts.append(Post(title = 'title1',content='a', author = 'aa' ))
posts.append(Post(title = 'title2',content='b', author = 'ab' ))
posts.append(Post(title = 'title3',content='c', author = 'ac' ))
posts.append(Post(title = 'title4',content='d', author = 'ad' ))
posts.append(Post(title = 'title5',content='e', author = 'ae' ))
# 객체 생성시_ key와 함께 넣어주면 알아보기 쉬움
# 이렇게 .append 할 수도 있음
for post in posts:
print(f'{post.title=}')
# 2문처럼 f-string 내애 {}와 =를 쓰면
# 터미널상의 출력물의 가독성이 더 좋음
for post in posts:
if post.author == 'lee':
pass
# 2문이 가능한 이유도 이미 classification(=class 선언)이 되어있기 때문임
# 'author'라는 'key'가 있을 것임을 기대할 수 있기 때문.
# 즉, "~~속성(어트리뷰트)이 있어야 너를 class~로 인정한다"인 것!
'TIL' 카테고리의 다른 글
[TIL 2024. 03. 05] (0) | 2024.03.06 |
---|---|
[TIL 2024. 03. 04] (0) | 2024.03.04 |
[TIL 2024. 02. 28] (0) | 2024.02.28 |
[TIL 2024. 02. 27] (0) | 2024.02.28 |
[TIL 2024. 02. 26] (0) | 2024.02.27 |