Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

10가지 흥미로운 Python 멋진 트릭

<시간/>

파이썬의 인기가 높아짐에 따라 파이썬 코딩에 사용할 수 있는 기능이 점점 더 많아지고 있습니다. 이 기능을 사용하면 코드를 더 적은 줄로 더 깔끔하게 작성할 수 있습니다. 이 기사에서는 매우 자주 사용되며 가장 유용한 10가지 파이썬 트릭을 볼 것입니다.

목록 뒤집기

reverse() 함수를 사용하여 주어진 목록을 간단히 뒤집을 수 있습니다. 목록에 있는 숫자 및 문자열 데이터 유형을 모두 처리합니다.

목록 =["시리야", "라비나","삼프리티" ]List.reverse()print(목록)

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

['삼프리티', '라비나', '슈리야']

목록 요소를 임의의 순서로 인쇄

목록의 값을 다른 순서로 인쇄해야 하는 경우 목록을 일련의 변수에 할당하고 목록을 인쇄할 순서를 프로그래밍 방식으로 결정할 수 있습니다.

목록 =[1,2,3]w, v, t =Listprint(v, w, t )print(t, v, w )

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

(2, 1, 3)(3, 2, 1)

함수 내에서 생성기 사용

함수 내에서 직접 생성기를 사용하여 더 짧고 깔끔한 코드를 작성할 수 있습니다. 아래 예에서 우리는 생성기를 sum 함수에 대한 인수로 직접 사용하여 합계를 찾습니다.

sum(i in range(10) )

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

45

zip() 함수 사용

단일 목록을 얻기 위해 목록과 같은 많은 반복자 객체를 결합해야 할 때 zip 함수를 사용할 수 있습니다. 결과는 다른 목록의 해당 항목과 그룹화할 각 항목을 보여줍니다.

<이전>연도 =(1999, 2003, 2011, 2017)월 =("3월", "6월", "1월", "12월")일 =(11,21,13,5)print zip(연도, 월 ,일)

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

[(1999, '3월', 11), (2003, '6월', 21), (2011, '1월', 13), (2017, '12월', 5)]

한 줄의 코드를 사용하여 두 개의 숫자 바꾸기

숫자를 교환하려면 일반적으로 임시 변수에 값을 저장해야 합니다. 그러나 이 파이썬 트릭을 사용하면 임시 변수를 사용하지 않고 한 줄의 코드로 이를 수행할 수 있습니다.

x,y =11, 34인쇄 xprint yx,y =y,xprint xprint y

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

11343411

행렬 전치

행렬 전치에는 열을 행으로 변환하는 작업이 포함됩니다. 파이썬에서는 행렬의 요소를 반복하고 위치를 변경하는 루프 구조를 설계하여 이를 달성할 수 있습니다. 또는 zip 함수와 관련된 다음 스크립트를 * 연산자와 함께 사용하여 주어진 목록의 전치가 되는 목록의 압축을 풀 수 있습니다. 매트릭스.

x =[[31,17],[40,51],[13,12]]인쇄(zip(*x))

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

[(31, 40, 13), (17, 51, 12)]

문자열 N번 인쇄

문자열을 여러 번 인쇄하는 프로그래밍 언어의 일반적인 접근 방식은 루프를 설계하는 것입니다. 그러나 파이썬에는 인쇄 함수 내부에 문자열과 숫자가 관련된 간단한 트릭이 있습니다.

str ="포인트";print(str * 3);

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

포인트포인트포인트

목록 슬라이싱을 사용하여 목록 요소 반전

목록 슬라이싱은 목록의 요소 순서를 반대로 하는 데 사용할 수도 있는 매우 강력한 파이썬 기술입니다.

#Reversing Stringslist1 =["a","b","c","d"]print list1[::-1]# Reversing Numberslist2 =[1,3,6,4,2]print list2[ ::-1]

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

['d', 'c', 'b', 'a'][2, 4, 6, 3, 1]

숫자의 인수 찾기

어떤 계산이나 분석에 필요한 숫자의 인수가 필요할 때 반복 인덱스로 해당 숫자의 가분성을 확인하는 작은 루프를 설계할 수 있습니다.

f =32print "",x,"의 인수는:"for i in range(1, f + 1):if f % i ==0:print(i)

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

32의 인수는 12481632입니다.

메모리 사용량 확인

getsizeof() 함수를 사용하여 선언한 각 변수가 사용하는 메모리 양을 확인할 수 있습니다. 아래에서 볼 수 있듯이 다른 문자열 길이는 다른 양의 메모리를 사용합니다.

가져오기 sysa, b, c,d ="abcde" ,"xy", 2, 15.06print(sys.getsizeof(a))print(sys.getsizeof(b))print(sys.getsizeof(c)) 인쇄(sys.getsizeof(d))

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

38352424