목록파이썬 (69)
스택큐힙리스트
예제와 같이 continue 와 pass 두 Python 키워드 간에 중요한 차이가 있나요? for element in some_list: if not element: pass그리고 for element in some_list: if not element: continue제가 알아야 할 것이 있나요?답변 1네, 그것들은 완전히 다른 작업을 수행합니다. ss , thi 는 아무것도하지 않지만, continue 는 다음 루프 반복으로 넘어갑니다. 예를들면, 당신의 예제에서 두 문장 사이에 다른 문장을 추가한다면 차이가 드러날 것입니다. ss , thi 를 실행한 후에는 해당 추가 문장이 실행됩니다. 하지만 continue 를 실행한 후에는 실행되지 않습니다. >>> a = [0, 1, 2]>>> for el..
이렇게 목록을 비우는 것은 매우 더러운 것 같습니다. while len(alist) > 0 : alist.pop()그것을 하기 위한 명확한 방법이 존재합니까?답변 1이는 실제로 리스트에서 콘텐츠를 제거하지만 새로운 빈 리스트로 오래된 라벨을 대체하지는 않습니다. del lst[:]예를 들어요: lst1 = [1, 2, 3]lst2 = lst1del lst1[:]print(lst2)완전성을 위해, 슬라이스 할당도 동일한 효과가 있습니다: lst[:] = []또한 동시에 일부를 대체하면서 목록의 일부를 축소하는 데도 사용할 수 있습니다 (하지만 그것은 질문의 범위를 벗어납니다).lst에 새로운 객체가 바인딩되지만 기존 목록은 여전히 동일한 요소를 가지고 있으며 다른 변수 바인딩이 있다면 영향이 있을 수 있으..
임의의 명령어를 실행하여 반환되는 stdout 데이터를 반환하거나 비정상적인 종료 코드가있는 경우 예외를 발생시키는 Python 코드입니다. proc = subprocess.Popen( cmd, stderr=subprocess.STDOUT, # Merge stdout and stderr stdout=subprocess.PIPE, shell=True)communicate은 프로세스가 종료될 때까지 기다리기 위해 사용됩니다. stdoutdata, stderrdata = proc.communicate()해당 모듈은 제한 시간을 지원하지 않아(특정 초 이상 실행되고 있는 프로세스를 종료할 수 있는 능력), communicate을(를) 실행하는 데 영원히 걸릴 수 있습니다.Windows와 Linux에서 실행할 P..
파이썬의 Time 모듈을 사용하여 경과 시간을 측정할 수 있습니까? 그렇다면, 어떻게 해야 합니까?내가 해야하는 것은 위젯 내에서 커서가 일정 시간 동안 있으면 이벤트가 발생하도록하는 것입니다.답변 1 start_time = time.time()# your codeelapsed_time = time.time() - start_time다음과 같이 여러 함수의 실행 시간을 측정하는 것을 간소화하기 위해 간단한 데코레이터를 작성할 수도 있습니다. import timefrom functools import wrapsPROF_DATA = {}def profile(fn): @wraps(fn) def with_profiling(*args, **kwargs): start_time = time.time() ret = f..