python zip 함수 활용
zip () 함수는 교체 가능한 대상을 매개 변수로 하고 대상에 대응하는 요소를 하나의 원조로 포장한 다음 이 원조로 구성된 목록을 되돌려줍니다.
만약 각 교체기의 요소 개수가 일치하지 않는다면, 귀환 목록의 길이는 가장 짧은 대상과 같고, * 번호 조작부호를 이용하여 원조를 목록으로 압축할 수 있다.
지금 예를 들어 zip 함수의 운용을 시범해 보자.
구문 구조:
zip([iterable, ...])
4
a=[1,2,3]
b=[4,5,6]
zip(a,b)
다음은 교묘한 운용(힘의 단추에 걸린 간단한 문제)을 말한다.
문자열 그룹의 가장 긴 공통 접두사를 찾기 위해 함수를 작성합니다.
공통 접두사가 없는 경우 빈 문자열\"\"을 반환합니다.
예1:
입력: ["flower", "flow", "flight"] 출력: "fl"예2:
입력: ["dog", "racecar", "car"] 출력: "설명: 입력에 공통 접두사가 존재하지 않습니다.설명:
모든 입력은 소문자 a-z만 포함합니다.
해결 코드는 다음과 같습니다.
def longestCommonPrefix(self, strs: List[str]) -> str:
res=''
for i in zip(*strs):
if len(set(i))==1:
res+=i[0]
else:
break
return res
zip(*strs) 설명
nums = ['flower','flow','flight']
for i in zip(*nums):
print(i)
:
('f', 'f', 'f')
('l', 'l', 'l')
('o', 'o', 'i')
('w', 'w', 'g')
대체적인 사고방식은 이렇다. zip 함수는 목록에 있는 모든 문자열의 같은 위치의 자모를 하나의 원조에 모으면 우리는 집합의 성질로 처리한다. 만약len(set(i)==1은 모든 문자열이 이 위치의 자모가 동일하다는 것을 의미한다. 즉, 이 자모는 공공 접두사 중의 하나라는 것이다.
최종 결과는 같은 위치의 자모를 똑같이 덧붙이는 것이 가장 큰 공통 접두사이다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.