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 | 31 |
Tags
- grafana dashboard
- influxdb 설치
- regex_search
- 정규식 활용
- python subprocess
- c3 축 없애기
- c3 초
- telegraf
- centos pyhon 설치
- gcc 업데이트
- g++ 업데이트
- c3 축 가리기
- snmp test
- 백준
- selinux port 등록
- linux시간으로 변경
- CentOS7
- python os
- c++ 정규식
- c3 second
- snmp
- InfluxDB
- 정규식 컴파일
- subporcess path
- 1697
- 정규식 문자열 출력
- gcc regex
- c3 step graph
- python popen
- semanage
Archives
- Today
- Total
리셋 되지 말자
람다 표현식 본문
람다 표현식 이란
식별자 없이 실행 가능한 함수를 말한다.
함수 선언 없이도 하나의 식으로 함수를 단순하게 표현할 수 있다.
람다 사용
- sorted (자동으로 정렬)
l = ['2 A', '1 B', '4 C', '1 A']
print(sorted(l))
['1 A', '1 B', '2 A', '4 C']
- 뒷 문자로 정렬. 뒤 문자가 같을 경우, 앞 번호순으로 정렬 : 람다 사용
l = ['2 A', '1 B', '4 C', '1 A']
l.sort(key= lambda x: (x.split()[1], x.split()[0]))
print(l)
['1 A', '2 A', '1 B', '4 C']
- 뒷 문자로 정렬. 뒤 문자가 같을 경우, 앞 번호순으로 정렬 : 람다 미사용
def func(x):
return x.split()[1], x.split()[0]
l = ['2 A', '1 B', '4 C', '1 A']
l.sort(key=func)
print(l)
['1 A', '2 A', '1 B', '4 C']
응용
>>> s = ['az', 'by', 'cy', 'cx']
>>> s.sort(key=lambda x: x[::-1])
>>> s
['cx', 'by', 'cy', 'az']
l = ['2 A', '1 B', '4 C', '1 A']
l.sort(key= lambda x: (x.split()[1], -int(x.split()[0])))
print(l)
['2 A', '1 A', '1 B', '4 C']
l = ['2 A', '1 B', '4 C', '1 A']
l.sort(key= lambda x: (x.split()[0], -ord(x.split()[1])))
print(l)
['1 B', '1 A', '2 A', '4 C']
참고 : https://www.acmicpc.net/board/view/51544
1) 문자열의 첫 글자를 기준으로 내림차순 정렬!
2) 만일 문자열의 첫 글자가 같을 경우 문자열 길이를 기준으로 오름차순 정렬!
nums = ['3', '30', '34', '5', '9']
nums.sort(key=lambda x: (x[0], -len(x)), reverse=True)
'Python' 카테고리의 다른 글
정렬 (0) | 2021.06.13 |
---|---|
python에서 re (regex) 사용 - 단어 추출 (0) | 2021.06.13 |
list 뒤짚기 - reverse() (0) | 2021.06.13 |
[python 문법] dict (0) | 2021.06.08 |
[python 문법] list (0) | 2021.06.08 |
Comments