반응형
테스트 할 문자열 목록으로 str.starts
너무 많은 if 문과 비교를 사용하지 않고 단순히 목록을 사용하려고하지만 목록과 함께 사용하는 방법을 잘 모르겠습니다 str.startswith
.
if link.lower().startswith("js/") or link.lower().startswith("catalog/") or link.lower().startswith("script/") or link.lower().startswith("scripts/") or link.lower().startswith("katalog/"):
# then "do something"
내가 원하는 것은 다음과 같습니다.
if link.lower().startswith() in ["js","catalog","script","scripts","katalog"]:
# then "do something"
도움을 주시면 감사하겠습니다.
str.startswith
테스트 할 문자열 튜플을 제공 할 수 있습니다.
if link.lower().startswith(("js", "catalog", "script", "katalog")):
로부터 문서 :
str.startswith(prefix[, start[, end]])
반환
True
와 캐릭터가 시작될 경우prefix
, 그렇지 않으면 반환False
.prefix
찾을 접두사의 튜플 일 수도 있습니다.
아래는 데모입니다.
>>> "abcde".startswith(("xyz", "abc"))
True
>>> prefixes = ["xyz", "abc"]
>>> "abcde".startswith(tuple(prefixes)) # You must use a tuple though
True
>>>
당신은 또한 사용할 수 있습니다 any()
, map()
과 같이 :
if any(map(l.startswith, x)):
pass # Do something
또는 목록 이해를 사용하여 :
if any([l.startswith(s) for s in x])
pass # Do something
참고 URL : https://stackoverflow.com/questions/20461847/str-startswith-with-a-list-of-strings-to-test-for
반응형
'IT박스' 카테고리의 다른 글
Ruby on Rails : 여러 해시 키 삭제 (0) | 2020.06.16 |
---|---|
Javascript에서 여러 변수를 동일한 값에 할당 (0) | 2020.06.16 |
Postman의 API에서 Excel (.xls) 파일을 다운로드하는 방법은 무엇입니까? (0) | 2020.06.16 |
리눅스에서 VNC 세션의 해상도 변경하기 (0) | 2020.06.16 |
MySQL 데이터 디렉토리를 변경하는 방법? (0) | 2020.06.16 |