티스토리 뷰
본 내용은 재학중인 학교 강의에 개인적인 공부를 더한 흔적입니다. 때문에 제가 조금은 오해한 부분이 있을 수 있습니다. 발견하실 경우 댓글로 남겨주시면 정말 감사하겠습니다 !! ( 책은 점프 투 파이썬&파이썬 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 |
- 방명록 프로젝트
- Thymeleaf
- 패킷 스위칭
- 운영체제 반효경
- Do it! 정직하게 코딩하며 배우는 딥러닝 입문
- 쉘 코드
- 김영환
- 스프링 테스트
- JUnit
- jsp
- JPA
- BOF
- Spring
- 파이썬 for Beginner 솔루션
- shell code
- 파이썬 for Beginner 연습문제
- 버퍼오버플로우
- spring mvc
- 지옥에서 온 git
- 생활코딩 javascript
- Gradle
- Python Cookbook
- 리버싱
- 선형 회귀
- 스프링
- 프로그래머스
- Computer_Networking_A_Top-Down_Approach
- 쉽게 배우는 운영체제
- Spring Data JPA
- Spring Boot
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- Total
- Today
- Yesterday