>  기사  >  백엔드 개발  >  시간을 절약해 주는 세 가지 Python 팁!

시간을 절약해 주는 세 가지 Python 팁!

王林
王林앞으로
2023-04-12 14:25:181392검색

시간을 절약해 주는 세 가지 Python 팁!

최근 작업 내용: 자동 파일 이동, 이미지 처리, 데이터 정리. 코드를 깔끔하고 이해하기 쉽게 만들기 위해 프로그래밍 과정에서 몇 가지 Python 팁을 요약했습니다. 다음으로 시간을 절약해 주는 Python 팁 3가지를 알려드리겠습니다.

시간을 절약해 주는 세 가지 Python 팁!

목록 반전

최근에 목록을 반전해야 하는 프로젝트가 있었는데 처음에는 슬라이싱을 통해 수행했습니다. 그러나 실제로 내장 함수 reverse() 메서드를 사용하여 Python에서 목록을 뒤집을 수도 있습니다.

목록을 만드는 것부터 시작하세요.

# 创建一个列表
mylist = list(np.arange(0,100))

목록을 뒤집는 두 가지 방법은 다음과 같습니다.

# 使用切片反转列表
newlist = mylist[::-1]

# 使用内置的 reverse() 反转列表
mylist.reverse()

두 방법 모두 목록을 뒤집을 수 있지만 내장 함수 reverse()는 원래 목록을 변경하고 슬라이싱 메서드는 새 목록을 생성한다는 점에 유의해야 합니다.

실행 시간 ⏳

시간을 절약해 주는 세 가지 Python 팁!

reverse()와 리스트 슬라이싱의 실행 시간을 비교해 보겠습니다

분명히 내장 함수인 reverse()가 리스트 슬라이싱 방법보다 3배 빠릅니다!

작업 프로젝트에서 시스템 파일의 자동 이동을 달성하기 위해 위치 값 목록을 만들었습니다. 초기 Python 프로그램은 리스트 슬라이싱을 사용하여 작성되었습니다. 이제 프로그램 실행 속도를 높이기 위해 reverse() 함수를 사용하도록 코드를 다시 작성했습니다.

자, 두 번째 기술을 소개하겠습니다.

코드 한 줄로 두 값 바꾸기

코드 한 줄로 두 변수 값을 바꾸는 것은 진정한 Pythonic 방식입니다.

다른 프로그래밍 언어와 달리 Python은 두 개의 숫자나 값을 교환하기 위해 임시 변수를 사용할 필요가 없습니다. 간단한 예를 들어보겠습니다.

# 创建两个变量
variable_1 = 100 
variable_2 = 500

variable_1과 Variable_2의 값을 바꾸려면 한 줄의 코드만 사용하면 됩니다.

变量_2,变量_1 = 变量_1,变量_2

한 줄의 코드를 사용하여 두 값을 교환하면 다음 형식으로 단순화됩니다.

시간을 절약해 주는 세 가지 Python 팁!

물론 내 실제 작업 프로젝트는 각 키의 값으로 목록이 있는 사전을 사용하므로 이보다 조금 더 복잡합니다.

md[key_2],md[key_1] = md[key_1],md[key_2]

위의 팁을 통해 내 작업은 여러 번의 반복과 복잡한 데이터 변환을 줄여 실행 시간을 단축했습니다.

함수 내부에서 for 루프를 사용하세요

우리 모두는 자신만의 특정 작업을 수행하기 위해 맞춤 함수를 만드는 것을 좋아합니다. 그런 다음 for 루프를 사용하여 이러한 함수를 반복하고 작업을 여러 번 반복합니다.

그러나 for 루프 내에서 함수를 사용하면 반복할 때마다 함수가 호출되기 때문에 실행 시간이 더 오래 걸립니다.

반대로 for 루프가 함수 내부에 구현되면 함수는 한 번만 호출됩니다.

더 명확하게 설명하기 위해 예를 들어보겠습니다!

먼저 간단한 문자열 목록을 만듭니다.

listofstrings = ['苹果','橙子','香蕉','菠萝','葡萄']

간단한 함수부터 시작하여 함수 내부와 외부에 for 루프가 있는 두 개의 함수를 만듭니다.

# 在函数内部创建一个没有for循环的函数
def onlyfunction(x):
    newstring = x.capitalize()
    outputstring = x + " " + newstring
    print(outputstring)

그리고 내부에 루프가 있는 for 함수가 있습니다.

# 创建一个函数,其中 for 循环在函数内部
def forinfunction(listofstrings):
    for x in listofstrings:
        newstring = x.capitalize()
        outputstring = x + " " + newstring
        print(outputstring)

이 함수를 사용하고 출력을 살펴보겠습니다.

시간을 절약해 주는 세 가지 Python 팁!

분명히 두 함수의 출력 결과는 동일합니다.

그러나 이야기는 여기서 끝나지 않습니다. 비교해 볼까요, 어느 것이 더 빠를까요?

시간을 절약해 주는 세 가지 Python 팁!

보시다시피 함수 내에서 for 루프를 사용하는 것이 약간 더 빠릅니다.

제 또 다른 프로젝트에서는 복잡한 이미지 처리 작업을 많이 처리해야 했습니다. 이에 비해 함수 내에서 for 루프를 사용하는 것은 각 반복에서 동일한 함수를 호출하는 것보다 1.5배 빠릅니다. 물론 이것은 내 개인적인 경험일 뿐이지만 비슷한 상황에 직면하면 도움이 될 수 있습니다.

간단히 말하면 Python에 내장된 기능을 더 많이 사용할 수 있다는 것입니다. 코드를 간결하고 이해하기 쉽게 유지하면서 Python 프로그램의 속도를 향상시킵니다.

파이썬에 내장된 기능에 대해 더 알고 싶으시면 아래 표를 참고하시거나, 아래 웹사이트를 확인하시면 됩니다:

https://www.php.cn/link/3dfe2f633108d604df160cd1b01710db

시간을 절약해 주는 세 가지 Python 팁!

위 내용은 시간을 절약해 주는 세 가지 Python 팁!의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 51cto.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제