>  기사  >  백엔드 개발  >  Python 인터뷰에서 자주 묻는 질문은 무엇입니까?

Python 인터뷰에서 자주 묻는 질문은 무엇입니까?

coldplay.xixi
coldplay.xixi원래의
2020-10-27 09:58:144159검색

Python 인터뷰에서 자주 묻는 질문은 다음과 같습니다. 1. Python은 어떻게 해석됩니까? 3. Python은 메모리를 어떻게 관리합니까? 4. Python 데코레이터는 무엇입니까? .

Python 인터뷰에서 자주 묻는 질문은 무엇입니까?

많은 무료 학습 추천이 있으니 python tutorial(동영상)

을 방문하세요. Python 인터뷰에서 자주 묻는 질문은 다음과 같습니다.

1. 파이썬이란 무엇입니까? ? 장점과 단점을 간략하게 설명하고 설명해 보시겠습니까?

Python은 해석, 컴파일, 상호 작용 및 객체 지향을 결합한 객체 지향 해석 컴퓨터 프로그래밍 언어입니다.

장점: 오픈 소스, 무료, 단순함, 배우기 쉽고, 휴대 가능하고, 확장 가능하고, 유지 관리가 쉽고, 높은 개발 효율성.

단점: 실행 속도가 느리고 코드를 암호화할 수 없습니다.

2. 파이썬은 어떻게 해석되나요?

Python은 해석된 언어이며 소스 코드를 직접 실행할 수 있습니다. Python 인터프리터는 소스 코드를 중간 언어로 변환한 다음 이를 기계어 코드로 번역하여 실행합니다.

3.PEP8이란 무엇인가요?

PEP8은 프로그램을 더 읽기 쉽게 만들기 위한 제안을 제공하는 프로그래밍 사양입니다.

4. Python은 메모리를 어떻게 관리하나요?

1) 참조 계산 메커니즘: Python은 내부적으로 참조 계산을 사용하여 메모리의 개체를 추적합니다. 2) 가비지 복구 메커니즘: 개체의 참조 횟수가 0이면 가비지 수집 메커니즘에 의해 처리됩니다.

3) 메모리 풀 메커니즘:

Python은 메모리에 대한 가비지 수집 메커니즘을 제공하지만 사용하지 않는 메모리를 운영 체제에 반환하는 대신 메모리 풀에 넣습니다.

Pymalloc 메커니즘: 실행 속도를 높이기 위해 Python의 효율성을 높이기 위해 Python은 작은 메모리 블록의 애플리케이션 및 릴리스를 관리하는 메모리 풀 메커니즘을 도입합니다.

정수, 부동 소수점 숫자 및 목록과 같은 Python 개체의 경우 자체적으로 독립적인 전용 메모리 풀이 있으며 해당 메모리 풀은 개체 간에 공유되지 않습니다. 이는 많은 수의 정수를 할당하고 해제하는 경우 이러한 정수를 캐시하는 데 사용되는 메모리를 더 이상 부동 소수점 숫자에 할당할 수 없음을 의미합니다.

Python 데코레이터는 함수 수정을 더 쉽게 해주는 Python의 고유한 변경 사항인 함수입니다. 이를 통해 함수는 자체 함수 정의를 수정하지 않고도 추가 함수를 동적으로 생성할 수 있습니다.

5. 파이썬 데코레이터란 무엇인가요?

Python 데코레이터는 함수 수정을 더 쉽게 해주는 Python의 고유한 변경 사항인 함수입니다. 이를 통해 함수는 자체 함수 정의를 수정하지 않고도 추가 함수를 동적으로 생성할 수 있습니다. Iterators, Generators

Iterable 객체: for-in을 사용하여 탐색할 수 있는 객체는 모두 반복 가능한 객체입니다.

Python에서는 객체에 __iter__() 메서드나 __getitem__() 메서드가 있으면 이를 호출합니다. 이 객체는 iterable (Iterable); __iter__() 메서드를 사용하면 for...in 루프를 사용하여 객체를 탐색할 수 있으며, __getitem__() 메서드를 사용하면 인스턴스의 "인스턴스 이름 [인덱스]" 요소를 통해 객체에 액세스할 수 있습니다. . 즉, 두 조건 중 하나만 만족하면 객체는 반복 가능하다고 할 수 있습니다. 분명히 List, Tuple, Dictionary 및 String과 같은 데이터 유형은 모두 반복 가능합니다.

Iterator: Iterator는 컬렉션의 요소에 액세스하는 방법입니다. for-in을 사용하여 순회하고 next 함수를 사용하여 반복할 수 있는 객체

Python에서는 객체에 __iter__() 메서드와 __next__() 메서드가 있는 경우 이를 반복자(Iterator)라고 합니다. ) 메소드를 사용하면 for...in 루프를 사용하여 객체를 순회할 수 있으며, __next__() 메소드를 사용하면 객체가 next(인스턴스 이름)를 통해 다음 요소에 액세스할 수 있습니다. 참고: 반복자라고 부르려면 이 두 메서드를 동시에 사용할 수 있어야 합니다. List, Tuple, Dictionary 및 String과 같은 데이터 유형은 반복 가능하지만 next() 메서드가 없기 때문에 반복자가 아닙니다.

6. 함수 클로저

자유 변수를 참조하는 함수는 함수가 생성된 환경을 벗어났더라도 함수와 함께 존재합니다.

7. 배열과 튜플의 차이점은 무엇입니까?

배열과 튜플의 차이점: 배열 내용은 수정할 수 있지만 튜플 내용은 읽기 전용입니다. 또한 튜플은 예를 들어 사전 키로 해시될 수 있습니다.

8. 클래스 메서드 및 정적 메서드

method: 인스턴스 호출을 통해 클래스 내의 모든 속성과 메서드를 참조할 수 있습니다.classmethod: 인스턴스화할 필요가 없으며 클래스 속성과 클래스 메서드를 호출할 수 있습니다. 일반 멤버는 이를 수행할 수 없습니다. 속성 및 메소드를 얻을 수 있습니다

정적 메소드: 인스턴스화할 필요가 없으며 클래스 내부의 속성과 메소드를 얻을 수 없습니다. 완전히 독립적인 메소드

9. Python에서는 어떤 내장 유형을 제공합니까?

Integer(int), string(str), tuple(tuple), Boolean(bool), set(set), list(list), Dictionary(dict)

10, 사전 이해 및 목록 이해란 무엇인가요?

사전과 목록을 쉽게 만들 수 있는 구문 구조입니다.

매개변수는 값으로 전달되고 참조는 어떻게 전달되나요?

Python의 모든 것은 클래스이고 모든 변수는 객체에 대한 참조입니다. 기준 값은 기능에 의해 결정되므로 변경할 수 없습니다. 그러나 객체를 수정할 수 있는 경우 객체를 변경할 수 있습니다.

11. 파이썬에서 람다는 무엇인가요?

코드에서 단일 표현식에 자주 사용되는 익명 함수입니다.

12. 파이썬에서 패스란 무엇인가요?

pass는 공백을 나타내는 데 사용되는 자리 표시자이며 실행되지 않습니다.

13. 파이썬에서 얕은 복사와 깊은 복사의 차이점은 무엇인가요?

copy.copy() 얕은 복사: 객체가 복사되지만 복사된 객체의 값은 여전히 ​​원래 객체의 값을 가리킵니다(참조와 동일). 복사된 객체의 요소가 수정되면 복사된 객체의 값도 수정됩니다.

copy.deepcopy() 딥 카피: 객체를 복사할 뿐만 아니라 객체의 요소도 복사하여 복사된 객체와 완전히 독립적인 새로운 객체를 얻습니다. 공간.

14. Python의 모듈과 패키지는 무엇인가요?

Python에서 모듈은 프로그램을 빌드하는 방법입니다. 모든 Python 코드 파일은 모듈이며 개체 및 속성과 같은 다른 모듈을 참조할 수 있습니다.

많은 Python 코드가 포함된 폴더가 패키지입니다. 패키지에는 모듈과 하위 폴더가 포함될 수 있습니다.

위 내용은 Python 인터뷰에서 자주 묻는 질문은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.