목록에 문자열이 포함되어 있는지 Python 확인
-
for
루프를 사용하여 Python 목록에서 특정 문자열 확인 - List Comprehension을 사용하여 Python 목록의 특정 문자열 확인
-
filter()
함수를 사용하여 Python 목록에서 특정 문자열 가져 오기
문자열은 일련의 문자입니다. 문자열이 특정 위치에 문자를 저장하는 것처럼 목록을 사용하여 문자열 모음을 저장할 수 있습니다.
이 자습서에서는 Python 목록에 특정 값이있는 문자열을 가져옵니다.
for
루프를 사용하여 Python 목록에서 특정 문자열 확인
for
는 Python에서 시퀀스를 반복하는 데 사용됩니다.
특정 값을 포함하는 문자열을 얻기위한 구현은 아래 예에 나와 있습니다.
py_list = ["a-1", "b-2", "c-3", "a-4"]
new_list = []
for x in py_list:
if "a" in x:
new_list.append(x)
print(new_list)
출력:
['a-1','a-4']
위 코드에서if
문은for
루프 내에서py_list
목록에서a
를 포함하는 문자열을 검색하는 데 사용됩니다. 이러한 특정 문자열을 저장하기 위해new_list
라는 또 다른 목록이 작성됩니다.
List Comprehension을 사용하여 Python 목록의 특정 문자열 확인
‘목록 이해력’은 기존 목록을 기반으로 새 목록을 만드는 방법입니다. 목록을 만드는 데 사용되는 다른 함수 및 루프보다 더 작고 빠른 더 짧은 구문을 제공합니다.
예를 들면
py_list = ["a-1", "b-2", "c-3", "a-4"]
r = [s for s in py_list if "a" in s]
print(r)
출력:
['a-1', 'a-4']
위의 코드에서 목록 이해는 목록py_list
에서a
가있는 문자열을 검색하는 데 사용됩니다.
다른 함수 나 루프를 사용하여 동일한 코드를 작성하면 구현에 더 많은 코드가 필요하므로 더 많은 시간이 소요될 수 있지만 목록 이해는 해당 문제를 해결합니다.
또한 list comprehension을 사용하여 여러 특정 값을 포함하는 문자열을 찾을 수 있습니다. 즉, 두 이해를 결합하여py_list
에서 a
와 b
가 포함 된 문자열을 찾을 수 있습니다.
예를 들면
py_list = ["a-1", "b-2", "c-3", "a-4", "b-8"]
q = ["a", "b"]
r = [s for s in py_list if any(xs in s for xs in q)]
print(r)
출력:
['a-1', 'b-2', 'a-4','b-8']
filter()
함수를 사용하여 Python 목록에서 특정 문자열 가져 오기
filter()
함수는 각 요소가 특정 조건을 충족하는지 여부를 확인하는 함수의 도움으로 주어진 이터 러블을 필터링합니다.
iterable의 각 요소에 대한 검사를 적용하는 반복자를 반환합니다.
예를 들면
py_lst = ["a-1", "b-2", "c-3", "a-4"]
filter(lambda x: "a" in x, py_lst)
print(filter(lambda x: "a" in x, py_lst))
출력:
<filter object at 0x7fd36c1905e0>
위의 출력은filter()
함수가 목록 대신 반복기를 반환하므로 필터 반복기 유형 객체입니다.
아래 코드에 표시된대로list()
함수를 사용하여 목록을 얻을 수 있습니다.
list(filter(lambda x: "a" in x, py_lst))
출력:
['a-1','a-4']
위의 코드에서filter()
를 사용하여py_list
목록에서 특정 값이있는 문자열을 찾았습니다.
관련 문장 - Python String
- Python의 문자열에서 쉼표 제거
- Python에서 문자열을 변수 이름으로 변환
- 파이썬에서 문자열에서 공백을 제거하는 방법
- Python의 문자열에서 숫자 추출
- 파이썬에서 문자열을 날짜 / 시간으로 변환하는 방법
- 파이썬 2와 3에서 문자열을 소문자로 변환하는 방법