Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- yaml
- API
- 파이써닉코드
- 프로그래머스
- numpy
- 행렬곱
- Comprehension
- Jar배포
- 파이썬
- Django
- 람다함수
- 토이프로젝트
- 집계함수
- EC2
- Postman
- 백엔드 인턴십
- todo project
- RDS
- 함수
- 코딩테스트
- 컴프리헨션
- 클래스
- PYTHON
- 조건연산
- cerbot
- spring boot
- self
- mock server
- sqlalchemy
- 프리온보딩
Archives
- Today
- Total
build my life
[Python] 파이써닉코드(Pythonic code) : 삼항연산자, Comprehension, enumerate & zip 본문
Python
[Python] 파이써닉코드(Pythonic code) : 삼항연산자, Comprehension, enumerate & zip
dalovee 2022. 8. 4. 17:08728x90
사람의 시간이 중요하다
코드를 실행하는 시간도 단축시키는 것이 물론 중요하지만 그 코드를 작성하는 사람의 시간도 매우 중요하다는 강사님의 말씀:)
즉, 더 빠르고 효율적인 코드 작성법에 대해 배웠다.
파이써닉(pythonic)한 코드
- 간결하고 가독성 있게 코딩하자
삼항 연산자
- 파이썬이 아닌 다른 언어들은 삼항연산자(?)가 존재하지만.. 파이썬은 없음!
if
,else
를 사용하여 삼항연산을 수행
<True 일때 사용할 값> if <condition> else <False 일때 사용할 값>
예시)
age = 19
msg = "회원가입 가능" if age >=20 else "회원가입 불가능"
컴프리헨션(Comprehension)
- 반복 가능한 객체를 활용해서 새로운 반복가능한 객체를 만들 수 있다.
list
,set
,dict
자료형을 간단하게 만드는 문법tuple
은 컴프리헨션 지원 불가
1) list comprehension
[]
사용해서 작성- 한줄로 작성해서 간단하고 가독성이 높다
- 속도가 빠르다!!!! (참고 : 파이썬에서 시간을 확인하고 싶을땐 "%%timeit" 써서 확인
[<추가할 값> for <변수> in <컬렉션> if <값에 대한 조건>]
2) set comprehension
{}
사용해서 작성- 중복값을 제거가 필요한 경우 사용
- 많이 사용하지는 않음!
a = {data for data in range(1,6)}
3) dict comprehension
{}
사용해서 작성- 추가할 값 자리에
:
사용해서 dict 형태로 작성
예시)
a = ["아침", "점심", "저녁"]
b = ["샌드위치", "유부초밥", "피자"]
result = {meal:food for meal, food in zip(a,b)}
대학생 때 파이썬을 공부했지만 파이써닉한 코드를 배운건 처음이었다.
확실히 시간도 단축되고 긴 코드를 한줄로 작성할 수 있다는 점이 코드 작성하면서 가장 크게 느낀 장점이었다!
속도 확인해보니까 진짜 다르긴 달라서 놀램,,, 오,,,
728x90
'Python' 카테고리의 다른 글
[Python] 람다 함수(lambda) (0) | 2022.08.08 |
---|---|
[Python] 함수 (0) | 2022.08.08 |
[Python] 제어문 - 반복문(while문, for문) (0) | 2022.08.04 |
[Python] 제어문 - 조건문(if) (0) | 2022.08.04 |
[Python] 문자열과 관련 메소드 (0) | 2022.08.04 |