[PYTHON] 파이썬에서 for 루프의 [] 괄호는 무엇을 의미합니까?
PYTHON파이썬에서 for 루프의 [] 괄호는 무엇을 의미합니까?
JSON 객체를 파싱 중이며이 샘플 코드 줄을 발견했습니다.이 코드 줄에 대해서는 다음과 같은 자세한 설명이 도움이 될 것입니다.
for record in [x for x in records.split("\n") if x.strip() != '']:
나는 새로운 레코드가 개별 레코드를 얻기 위해 레코드를 분할한다는 것을 알고 있지만, 왜 그렇게 복잡해 보일지 궁금해했다. 우리가 이런 식으로 할 수없는 경우인가?
for record in records.split("\n") if x.strip() != '']:
그러면 괄호는 무엇을합니까? 왜 우리는 x에 대해 records.split에서 x에 대해 두 번 x를 가질 수 있습니까?
감사
해결법
-
==============================
1.예제에서 "대괄호"는 이전 목록에서 새 목록을 작성합니다.이를 목록 이해 (list comprehension)라고합니다.
예제에서 "대괄호"는 이전 목록에서 새 목록을 작성합니다.이를 목록 이해 (list comprehension)라고합니다.
조건이 xs이면 x에 대한 [f (x)]의 기본 아이디어는 다음과 같습니다.
def list_comprehension(xs): result = [] for x in xs: if condition: result.append(f(x)) return result
f (x)는 x를 포함하거나 포함하지 않는 임의의 표현식이 될 수 있습니다.
-
==============================
2.그것은 목록 이해이며, 즉석에서 특정 조건을 가진 목록을 만드는 깔끔한 방법입니다.
그것은 목록 이해이며, 즉석에서 특정 조건을 가진 목록을 만드는 깔끔한 방법입니다.
당신은 이것의 짧은 형태로 만들 수 있습니다 :
a = [] for record in records.split("\n"): if record.strip() != '': a.append(record) for record in a: # do something
-
==============================
3.대괄호 ([])는 보통 파이썬에서리스트를 보낸다.
대괄호 ([])는 보통 파이썬에서리스트를 보낸다.
from https://stackoverflow.com/questions/30670310/what-do-brackets-in-a-for-loop-in-python-mean by cc-by-sa and MIT license
'PYTHON' 카테고리의 다른 글
[PYTHON] BeautifulSoup 객체에 새 태그를 삽입하려면 어떻게해야합니까? (0) | 2018.11.22 |
---|---|
[PYTHON] Python 2.7 주어진 값으로 사전 항목 수를 센다. (0) | 2018.11.22 |
[PYTHON] 1 억 개의 0을 가진 효율적인 파이썬 배열? (0) | 2018.11.22 |
[PYTHON] 파이썬 argparse - 선택적 인수이거나 아니면 둘 다 아니다. (0) | 2018.11.22 |
[PYTHON] 파이썬 루프없이 단조로운 배열 만들기 (0) | 2018.11.21 |