티스토리 뷰
본 내용은 재학중인 학교 강의에 개인적인 공부를 더한 흔적입니다. 때문에 제가 조금은 오해한 부분이 있을 수 있습니다. 발견하실 경우 댓글로 남겨주시면 정말 감사하겠습니다 !! ( 책은 점프 투 파이썬&파이썬 for Beginner을 참고했습니다. )
Python의 list를 사용할 때 알아두면 좋은 점
list 변수를 만들 때
a = List() 이런 식으로 미리 선언할 수도 있지만 a = [] 식으로 선언하는 것이 더 간결하고 보기에 좋다. 그리고 미리 변수를 선언해 놓으면 남들이 코드를 분석할 때 사용되는 변수를 미리 보고 예측할 수 있기 때문이다.
List comprehension
대괄호 안에서 for문을 통해 list의 원소를 생성할 수 있다.
예를 들어 저번에 코딩했던 quicksort에서 리스트 초기화를
inputList = []
for x in range(4,len(sys.argv)):
inputList.append(int(sys.argv[x]))
이런 식으로 했는데 이를
inputList = [int(x) for x in sys.argv[4:]]
이렇게 한 줄로 코딩할 수 있다.
List slice
위에서 sys.argv[4:]는 4번 원소부터 끝까지 원소를 나눈다는 의미이다.
이처럼 python에는 매우 유용한 리스트 자르기 기능들이 내장되어 있다.
[n:m] = n번 원소부터 m-1번 원소까지
[n:] = n번 원소부터 끝까지
[:m] = 처음부터 m-1번 원소까지
[n:m:s] = n번부터 m-1번까지 s만큼 증가하면서
[-1] = 마지막 원소
[-2:] = 맨 뒤에서 2개
[:-n] = 맨 뒤부터 n개 빼고 전부
Lambda (익명함수)
이 함수는 한 번 쓰고 heap에서 증발되는 함수로 대부분의 프로그래밍 언어에서 사용 가능하다.
가독성을 높이기 위해 사용되며, 코드량도 줄일 수 있고 메모리도 절약할 수 있다.
ex)
def hap(x, y):
return x+y
↓
(lambda x,y: x+y)(10,20)
'python' 카테고리의 다른 글
Python 소켓 모듈 사용 (0) | 2019.03.17 |
---|---|
Python argparse 명령행 인자 받기 (0) | 2019.03.17 |
Python mutable vs immutable (0) | 2019.03.12 |
Python Quicksort (0) | 2019.03.08 |
자료형(1) (0) | 2019.03.06 |
- Total
- Today
- Yesterday
- 스프링 mvc
- 선형 회귀
- git
- Spring
- Gradle
- 방명록 프로젝트
- 쉽게 배우는 운영체제
- 쉘 코드
- Computer_Networking_A_Top-Down_Approach
- 스프링
- Python Cookbook
- 패킷 스위칭
- Do it! 정직하게 코딩하며 배우는 딥러닝 입문
- Thymeleaf
- 스프링 컨테이너
- 파이썬 for Beginner 솔루션
- 김영환
- 파이썬 for Beginner 연습문제
- 생활코딩 javascript
- 지옥에서 온 git
- git merge
- Spring Boot
- 프로그래머스
- Spring Data JPA
- 운영체제 반효경
- 스프링 테스트
- spring mvc
- JPA
- jsp
- git branch
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |