일부는 경쟁력 있는 프로그래밍을 위해 파이썬 모듈을 알아야 합니다.
1914 단어 python
입력 받기:
일반적으로 CodeChef에는 다음과 같은 입력이 있습니다.
1 2 3 4 5 6 7
단순히 숫자 목록으로 가져오려면
_list = 지도(int, raw_input().split())
입력의 종류에 관계없이 항상 raw_input() 함수를 사용하고 map 함수를 사용하여 변환합니다. 맵 함수는 파이썬에서 가장 아름다운 함수 중 하나입니다. 알아야 할 가치가 있습니다.
스와핑 :
ㅏ, ㄴ = ㄴ, ㅏ
슬라이싱 작업:
X[:N] — all elements below index N.
X[N:] — all elements above index N.
X[a:b] — all elements between a, b.
And remember python lists are circular
X[-k] gives k’th element from the last. Quite useful to use in slicing also
X[-k:] — gives last k elements.
X[:-k] — gives first n-k elements where n is the length of the list.
There are many more: Neat Features in Python: Slicing and Sliding (Stepping) and Slicing, Dicing and Splicing
반복하는 동안 항상 xrange()를 사용하고 결코 range()를 사용하지 마십시오.
이것은 대부분의 초보자들이 흔히 하는 실수입니다. range()는 일종의 잔인한 목록을 제공합니다. xrange()는 생성기이며 요소를 하나씩 그리고 한 번만 생성합니다. Python3을 사용하는 경우 범위를 사용하는 것이 안전합니다.
정렬() 함수:
컬렉션 모듈:
매우 자주 중복을 제거해야 합니다. Java와 같은 언어에서는 HashMap과 그 모든 것을 사용해야 하지만 Python에서는 간단합니다.
_list = 목록(세트(_list)).
목록에서 extend()와 append()의 차이점.
a=[1, 2, 3] 및 b=[4, 5, 6]을 병합해야 합니다.
a.확장(b)
주는
[1, 2, 3, 4, 5, 6]
a.추가(b)
준다
[1, 2, 3, [4, 5, 6]]
문자열 연결:
strings = ['I', 'am', 'the', 'laziest', 'person', 'in', 'the', 'world' ]
위의 문자열을 연결하려면 다음을 수행하고 싶을 것입니다.
정답을 제공하지만 최악의 방법이며 엄청난 시간이 소요됩니다. 올바른 방법은 join() 함수를 사용하는 것입니다.
그렇다면 파이썬에서 축소 기능 사용을 중지하십시오. 그들은 잘 지원되지 않으며 곧 사용되지 않을 것입니다. 파이썬 발명가가 직접 파이썬 3000에서 reduce()의 운명. 람다를 광범위하게 사용하기 시작하십시오. 이 게시물 Python Lambda — 왜?를 참조하십시오. - 스택 오버플로.
그리고 목록은 계속됩니다.
이 책 Writing Idiomatic Python Book을 확인하십시오.
나는 당신이 어딘가에서 pdf를 얻을 수 있다고 확신합니다.
마지막으로 연습 !!. HackerRank는 초보자에게 가장 적합하며 특히 파이썬 애호가라면 정말 편안할 것입니다.
위의 스니펫은 제가 Quora에 썼고 약간의 감사를 받은 답변입니다. 여기도 도움이 되었으면 좋겠습니다!
Reference
이 문제에 관하여(일부는 경쟁력 있는 프로그래밍을 위해 파이썬 모듈을 알아야 합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/kaushik94/some-must-know-python-modules-for-competitive-programming-43c3텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)