全球排名第一오피스타공식 홈페이지의 입구 방법을 찾는 방법

  아래에 파이썬에 내장된 형들의 목록이 있습니다. (구현에 따라 C 나 자바나 다른 언어로 작성된) 확장 모듈들은 추가의 형을 정의할 수 있습니다. 파이썬의 미래 버전 역시 형 계층에 형을 더할 수 있는데 (예를 들어, 유리수, 효율적으로 저장된 정수 배열 등등), 표준 라이브러리를 통해 추가될 가능성이 더 크기는 합니다.

  아래에 나오는 몇몇 형에 대한 설명은 ‘특수 어트리뷰트(special attribute)’ 를 나열하는 문단을 포함합니다. 이것들은 구현에 접근할 방법을 제공하는데, 일반적인 사용을 위한 것이 아닙니다. 정의는 앞으로 변경될 수 있습니다.

  None

  이 형은 하나의 값만을 갖습니다. 이 값을 갖는 하나의 객체가 존재합니다. 이 객체에는 내장된 이름 을 통해 접근합니다. 여러 가지 상황에서 값의 부재를 알리는 데 사용됩니다. 예를 들어, 명시적으로 뭔가를 돌려주지 않는 함수의 반환 값입니다. 논리값은 거짓입니다.

  NotImplemented

  이 형은 하나의 값만을 갖습니다. 이 값을 갖는 하나의 객체가 존재합니다. 이 객체에는 내장된 이름 을 통해 접근합니다. 숫자 메서드(numeric method)와 비교(rich comparison) 메서드는 제공된 피연산자에 대해 연산이 구현되지 않으면 이 값을 돌려줘야 합니다. (그러면 인터프리터는 연산자에 따라 뒤집힌 연산이나, 어떤 다른 대안을 시도합니다.) 논리값은 참입니다.

  더 자세한 내용은 을 참고하십시오.

  Ellipsis

  이 형은 하나의 값만을 갖습니다. 이 값을 갖는 하나의 객체가 존재합니다. 이 객체에는 리터럴 이나 내장된 이름 을 통해 접근합니다. 논리값은 참입니다.

  이것들은 숫자 리터럴에 의해 만들어지고, 산순 연산과 내장 산술 함수들이 결과로 돌려줍니다. 숫자 객체는 불변입니다; 한 번 값이 만들어지면 절대 변하지 않습니다. 파이썬의 숫자는 당연히 수학적인 숫자들과 밀접하게 관련되어 있습니다, 하지만 컴퓨터의 숫자 표현상의 제약을 받고 있습니다.

  The string representations of the numeric classes, computed by

  and , have the following

  properties:

  파이썬은 정수, 실수, 복소수를 구분합니다:

  이것들은 수학적인 정수 집합(양과 음)에 속하는 요소들을全球排名第一오피스타 나타냅니다.

  두 가지 종류의 정수가 있습니다:

  정수 ()

  이것은 (가상) 메모리가 허락하는 한, 제약 없는 범위의 숫자를 표현합니다. 시프트(shift)와 마스크(mask) 연산이 목적일 때는 이진 표현이 가정되고, 음수는 일종의 2의 보수(2’s complement)로 표현되는데, 부호 비트가 왼쪽으로 무한히 확장된 것과 같은 효과를 줍니다.

  불린 ()

  이것은 논리값 거짓과 참을 나타냅니다. 와 두 객체만 불린 형 객체입니다오피스타 공식 사이트 입구는 몇 곳인가요?. 불린 형은 int 형의 자식형(subtype)이고, 대부분 상황에서 각기 0과1처럼 동작합니다. 예외는 문자열로 변환되는 경우인데, 각기 문자열 와 가 반환됩니다.

  정수 표현 규칙은 음수가 포함된 시프트와 마스크 연산에 가장 의미 있는 해석을 제공하기 위한 것입니다.

  ()

  이것들은 기계 수준의 배정도(double precision) 부동 소수점 수를 나타냅니다. 허락되는 값의 범위와 오버플로의 처리에 관해서는 하부 기계의 설계(와 C 나 자바 구현)에 따르는 수밖에 없습니다. 파이썬은 단정도(single precision) 부동 소수점 수를 지원하지 않습니다; 이것들을 사용하는 이유가 되는 프로세서와 메모리의 절감은 파이썬에서 객체를 사용하는데 들어가는 비용과 상쇄되어 미미해집니다. 그 때문에 두 가지 종류의 부동 소수점 수로 언어를 복잡하게 만들만한 가치가 없습니다.

  ()

  이것들은 기계 수준 배정도 부동 소수점 수의 쌍으로 복소수를 나타냅니다. 부동 소수점 수와 한계와 문제점을 공유합니다. 복소수 의 실수부와 허수부는, 읽기 전용 어트리뷰트 와 로 꺼낼 수 있습니다.

  시퀀스들

  음이 아닌 정수로 인덱싱(indexing)될 수 있는 유한한 길이의 순서 있는 집합을 나타냅니다. 내장함수 은 시퀀스가 가진 항목들의 개수를 돌려줍니다. 시퀀스의 길이가 n 일 때, 인덱스(index) 집합은 숫자 0, 1, …, n-1을 포함합니다. 시퀀스 a 의 항목 i 는 로 선택됩니다.

  시퀀스는 슬라이싱도 지원합니다: 는 i k j 를 만족하는 모든 항목 k 를 선택합니다. 표현식에서 사용될 때, 슬라이스는 같은 형의 시퀀스입니다. 인덱스 집합은 0에서 시작되도록 다시 번호 매겨집니다.

  어떤 시퀀스는 세 번째 “스텝(step)” 매개변수를 사용하는 “확장 슬라이싱(extended slicing)”도 지원합니다: 는 , n , i x j 를 만족하는 모든 항목 x 를 선택합니다.

  시퀀스는 불변성에 따라 구분됩니다

  불변 시퀀스

  불변 시퀀스 형의 객체는 일단 만들어진 후에는 변경될 수 없습니다. (만약 다른 객체로의 참조를 포함하면, 그 객체는 가변일 수 있고, 변경될 수 있습니다; 하지만, 불변 객체로부터 참조되는 객체의 집합 자체는 변경될 수 없습니다.)

  다음과 같은 형들은 불변 시퀀스입니다:

  문자열(Strings)

  문자열은 유니코드 코드 포인트(Unicode code point)들을 표현하는 값들의 시퀀스입니다. 범위의 모든 코드 포인트들은 문자열로 표현될 수 있습니다. 파이썬에는 형이 없습니다. 대신에 문자열에 있는 각 코드 포인트는 길이 인 문자열 객체로 표현됩니다. 내장 함수 는 코드 포인트를 문자열 형식에서 범위의 정수로 변환합니다; 은 범위 의 정수를 해당하는 길이 의 문자열 객체로 변환합니다. 는 주어진 텍스트 인코딩을 사용해서 을 로 변환하고, 는 그 반대 작업을 수행합니다.

  튜플(Tuples)

  튜플의 항목은 임의의 파이썬 객체입니다. 두 개 이상의 항목으로 구성되는 튜플은 콤마로 분리된 표현식의 목록으로 만들 수 있습니다. 하나의 항목으로 구성된 튜플(싱글턴,singleton)은 표현식에 콤마를 붙여서 만들 수 있습니다(괄호로 표현식을 묶을 수 있으므로, 표현식 만으로는 튜플을 만들지 않습니다). 빈 튜플은 한 쌍의 빈 괄호로 만들 수 있습니다.

  바이트열(Bytes)

  바이트열(bytes) 객체는 불변 배열입니다. 항목은 8-비트 바이트인데, 0 <= x < 256 범위의 정수로 표현됩니다. 바이트 객체를 만들 때는 바이트열 리터럴( 와 같은) 과 내장 생성자(constructor)를 사용할 수 있습니다. 또한, 바이트열 객체는 메서드를 통해 문자열로 디코딩될 수 있습니다.

  가변 시퀀스

  가변 시퀀스는 만들어진 후에 변경될 수 있습니다. 서브스크립션(subscription)과 슬라이싱은 대입문과 (삭제) 문의 대상으로 사용될 수 있습니다.

  현재 두 개의 내장 가변 시퀀스형이 있습니다:

  리스트(Lists)

  리스트의 항목은 임의의 파이썬 객체입니다. 리스트는 콤마로 분리된 표현식을 대괄호 안에 넣어서 만들 수 있습니다. (길이 0이나 1의 리스트를 만드는데 별도의 규칙이 필요 없습니다.)

  바이트 배열(Byte Arrays)

  바이트 배열(bytearray) 객체는 가변 배열입니다. 내장 생성자로 만들어집니다. 가변이라는 것(그래서 해싱 불가능하다는 것)을 제외하고, 바이트 배열은 불변 바이트열( ) 객체와 같은 인터페이스와 기능을 제공합니다.

  확장 모듈 는 추가의 가변 시퀀스 형을 제공하는데, 모듈 역시 마찬가지입니다.

  집합 형들(Set types)

  이것들은 중복 없는 불변 객체들의 순서 없고 유한한 집합을 나타냅니다. 인덱싱할 수 없습니다. 하지만 이터레이트할 수 있고, 내장 함수 은 집합 안에 있는 항목들의 개수를 돌려줍니다. 집합의 일반적인 용도는 빠른 멤버십 검사(fast membership testing), 시퀀스에서 중복된 항목 제거, 교집합(intersection), 합집합(union), 차집합(difference), 대칭차집합(symmetric difference)과 같은 집합 연산을 계산하는 것입니다.

  집합의 원소들에는 딕셔너리 키와 같은 불변성 규칙이 적용됩니다. 숫자 형의 경우는 숫자 비교에 관한 일반 원칙이 적용된다는 점에 주의해야 합니다: 만약 두 숫자가 같다고 비교되면(예를 들어, 과 ), 그중 하나만 집합에 들어갈 수 있습니다.

  현재 두 개의 내장 집합 형이 있습니다:

  집합(Sets)

  이것들은 가변 집합을 나타냅니다. 내장 생성자로 만들 수 있고, 같은 메서드들을 사용해서 나중에 수정할 수 있습니다.

  불변 집합(Frozen sets)오피스타공식 웹 사이트 입구 방법을 찾는 방법

  이것들은 불변 집합을 나타냅니다. 내장 생성자로 만들 수 있습니다. 불변 집합(frozenset)은 불변이고 하므로, 다른 집합의 원소나, 딕셔너리의 키로 사용될 수 있습니다.

  매핑(Mappings)

  이것들은 임의의 인덱스 집합으로 인덱싱되는 객체들의 유한한 집합을 나타냅니다. 인덱스 표기법(subscript notation) 는 매핑 에서 로 인덱스 되는 항목을 선택합니다; 이것은 표현식에 사용될 수도 있고, 대입이나 문장의 대상이 될 수도 있습니다. 내장 함수 은 매핑에 포함된 항목들의 개수를 돌려줍니다.

  현재 한 개의 내장 매핑 형이 있습니다:

  딕셔너리(Dictionaries)

  이것들은 거의 임의의 인덱스 집합으로 인덱싱되는 객체들의 유한한 집합을 나타냅니다. 키로 사용할 수 없는 것들은 리스트, 딕셔너리나 그 외의 가변형 중에서 아이덴티티가 아니라 값으로 비교되는 것들뿐입니다. 딕셔너리의 효율적인 구현이, 키의 해시값이 도중에 변경되지 않고 계속 같은 값으로 유지되도록 요구하고 있기 때문입니다. 키로 사용되는 숫자 형의 경우는 숫자 비교에 관한 일반 원칙이 적용됩니다: 만약 두 숫자가 같다고 비교되면(예를 들어, 과 ), 둘 다 같은 딕셔너리 항목을 인덱싱하는데 사용될 수 있습니다.

  딕셔너리는 삽입 순서를 유지합니다, 키가 딕셔너리에 순차적으로 추가된 순서와 같은 순서로 생성됨을 뜻합니다. 기존 키를 교체해도 순서는 변경되지 않지만, 키를 제거했다가 다시 삽입하면 이전 위치를 유지하는 대신 끝에 추가됩니다.

  딕셔너리는 가변입니다; 표기법으로 만들 수 있습니다 ( 섹션을 참고하십시오).

  확장 모듈 과 는 추가의 매핑 형을 제공하는데, 모듈 역시 마찬가지입니다.

  콜러블(Callable types)

  이것들은 함수 호출 연산( 섹션 참고)이 적용될 수 있는 형들입니다:

  사용자 정의 함수

  사용자 정의 함수 객체는 함수 정의를 통해 만들어집니다 ( 섹션 참고). 함수의 형식 매개변수(formal parameter) 목록과 같은 개수의 항목을 포함하는 인자(argument) 목록으로 호출되어야 합니다.

  특수 어트리뷰트들(Special attributes):

  “쓰기 가능” 하다고 표시된 대부분의 어트리뷰트들은 값이 대입될 때 형을 검사합니다.

  함수 객체는 임의의 어트리뷰트를 읽고 쓸 수 있도록 지원하는데, 예를 들어 함수에 메타데이터(metadata)를 붙이는데 사용될 수 있습니다. 어트리뷰트를 읽거나 쓸 때는 일반적인 점 표현법(dot-notation)이 사용됩니다. 현재 구현은 오직 사용자 정의 함수만 함수 어트리뷰트를 지원함에 주의해야 합니다. 내장 함수의 함수 어트리뷰트는 미래에 지원될 수 있습니다.

  셀 객체는 어트리뷰트를 가지고 있습니다. 셀의 값을 읽을 뿐만 아니라 값을 설정하는 데도 사용할 수 있습니다.

  함수 정의에 관한 추가적인 정보를 코드 객체로부터 얻을 수 있습니다. 아래에 나오는 내부 형의 기술을 참고하십시오. 형은 모듈에서 액세스할 수 있습니다.

  인스턴스 메서드(Instance methods)

  인스턴스 메서드는 클래스, 클래스 인스턴스와 모든 콜러블 객체 (보통 사용자 정의 함수)을 결합합니다.

  특수 읽기 전용 어트리뷰트들: 는 클래스 인스턴스 객체, 는 함수 객체; 은 메서드의 설명 ( 과 같습니다); 은 메서드의 이름 ( 과 같습니다); 은 메서드가 정의된 모듈의 이름이거나 없는 경우 .

  메서드는 기반 함수의 모든 함수 어트리뷰트들을 읽을 수 있도록 지원합니다(하지만 쓰기는 지원하지 않습니다).

  어트리뷰트가 사용자 정의 함수 객체이거나 클래스 메서드 객체면, 사용자 정의 메서드 객체는 클래스의 어트리뷰트를 읽을 때 만들어질 수 있습니다 (아마도 그 클래스의 인스턴스를 통해서).

  인스턴스 메서드 객체가 클래스 인스턴스를 통해 클래스의 사용자 정의 함수 객체를 읽음으로써 만들어질 때, 어트리뷰트는 인스턴스이고, 메서드 객체는 결합(bound)하였다고 말합니다. 새 메서드의 어트리뷰트는 원래의 함수 객체입니다.

  인스턴스 메서드 객체가 클래스나 인스턴스로부터 클래스 메서드 객체를 읽음으로써 만들어질 때, 어트리뷰트는 클래스 자신이고, 어트리뷰트는 클래스 메서드가 기반을 두는 함수 객체입니다.

  인스턴스 메서드 객체가 호출될 때, 기반을 두는 함수 () 가 호출되는데, 인자 목록의 앞에 클래스 인스턴스 () 가 삽입됩니다. 예를 들어, 가 함수 의 정의를 포함하는 클래스이고, 가 의 인스턴스일 때, 를 호출하는 것은 을 호출하는 것과 같습니다.

  인스턴스 메서드 객체가 클래스 메서드 객체로부터 올 때, 에 저장된 “클래스 인스턴스” 는 실제로는 클래스 자신입니다. 그래서 이나 을 호출하는 것은 를 호출하는 것과 같습니다 ( 는 기반 함수입니다).

  함수 객체에서 인스턴스 객체로의 변환은 인스턴스로부터 어트리뷰트를 읽을 때마다 일어남에 주의해야 합니다. 어떤 경우에, 어트리뷰트를 지역 변수에 대입하고, 그 지역 변수를 호출하는 것이 효과적인 최적화가 됩니다. 또한, 이 변환이 사용자 정의 함수에 대해서만 발생함에 주의해야 합니다; 다른 콜러블 객체 (그리고 콜러블이 아닌 모든 객체)는 변환 없이 읽힙니다. 클래스 인스턴스의 어트리뷰트인 사용자 정의 함수는 결합한 메서드로 변환되지 않는다는 것도 중요합니다; 이 변환은 함수가 클래스 어트리뷰트일 때만 일어납니다.

  제너레이터 함수(Generator functions)

  문( 절 참조)을 사용하는 함수나 메서드를 라고 부릅니다. 이런 함수를 호출하면 항상 이터레이터(iterator) 객체를 돌려주는데, 함수의 바디(body)를 실행하는 데 사용됩니다: 이터레이터의 메서드를 호출하면 문이 값을 제공할 때까지 함수가 실행됩니다. 함수가 문을 실행하거나 끝에 도달하면 예외를 일으키고, 이터레이터는 반환하는 값들의 끝에 도달하게 됩니다.

  코루틴 함수(Coroutine functions)

  를 사용해서 정의되는 함수나 메서드를 라고 부릅니다. 이런 함수를 호출하면 객체를 돌려줍니다. 표현식을 비롯해, 와 문을 사용할 수 있습니다. 섹션을 참조하십시오.

  비동기 제너레이터 함수(Asynchronous generator functions)

  를 사용해서 정의되는 함수가 문을 사용하면 라고 부릅니다. 이런 함수를 호출하면 항상 비동기 이터레이터(asynchronous iterator) 객체를 돌려주는데, 함수의 바디(body)를 실행하기 위해 문에서 사용됩니다.

  비동기 이터레이터의 메서드를 호출하면 을 돌려주는데, await 할 때 문이 값을 제공할 때까지 함수가 실행됩니다. 함수가 빈 문을 실행하거나 끝에 도달하면 예외를 일으키고, 비동기 이터레이터는 반환하는 값들의 끝에 도달하게 됩니다.

  내장 함수(Built-in functions)

  내장 함수 객체는 C 함수를 둘러싸고 있습니다(wrapper). 내장 함수의 예로는 과 ( 는 표준 내장 모듈입니다) 가 있습니다. 인자의 개수와 형은 C 함수에 의해 결정됩니다. 특수 읽기 전용 어트리뷰트들: 은 함수의 설명 문자열 또는 없는 경우 입니다; 은 함수의 이름입니다; 는 으로 설정됩니다 (하지만 다음 항목을 보십시오); 은 함수가 정의된 모듈의 이름이거나 없는 경우 입니다.

  내장 메서드(Built-in methods)

  이것은 사실 내장 함수의 다른 모습입니다. 이번에는 묵시적인 추가의 인자로 C 함수에 전달되는 객체를 갖고 있습니다. 내장 메서드의 예로는 가 있는데, alist 는 리스트 객체입니다. 이 경우에, 특수 읽기 전용 어트리뷰트 는 alist 로 표현된 객체로 설정됩니다.

  클래스(Classes)

  클래스는 콜러블입니다. 이 객체들은 보통 자신의 새로운 인스턴스를 만드는 팩토리(factory)로 동작하는데, 메서드를 재정의(override)하는 클래스 형에서는 달라질 수도 있습니다. 호출 인자는 로 전달되고, 일반적으로, 새 인스턴스를 초기화하기 위해 로도 전달됩니다.

  클래스 인스턴스(Class Instances)

  클래스에서 메서드를 정의함으로써, 클래스 인스턴스를 콜러블로 만들 수 있습니다.

  모듈(Modules)

  모듈은 파이썬 코드의 기본적인 조직화 단위이고, 문이나, 과 내장 함수를 호출해서 구동할 수 있는 에 의해 만들어집니다. 모듈 객체는 딕셔너리 객체로 구현되는 이름 공간을 갖습니다(이 딕셔너리 객체는 모듈에서 정의되는 함수들의 어트리뷰트로 참조됩니다). 어트리뷰트 참조는 이 딕셔너리에 대한 조회로 변환됩니다. 예를 들어, 는 와 같습니다. 모듈 객체는 모듈을 초기화하는데 사용된 코드 객체를 갖고 있지 않습니다 (일단 초기화가 끝나면 필요 없으므로).

  어트리뷰트 대입은 모듈의 이름 공간 딕셔너리를 갱신합니다. 예를 들어, 은 과 같습니다.

  미리 정의된 (쓰기 가능한) 어트리뷰트들: 은 모듈의 이름입니다; 은 모듈의 설명 문자열 또는 없는 경우 입니다; (없을 수도 있는) 는 모듈의 바디를 실행하면서 수집된 들을 담은 딕셔너리입니다; 은 모듈이 로드된 파일의 경로명입니다. 인터프리터에 정적으로 연결된 C 모듈과 같은 어떤 종류의 모듈들에서는 어트리뷰트가 제공되지 않습니다; 공유 라이브러리(shared library)로부터 동적으로 로딩되는 확장 모듈의 경우 공유 라이브러리의 경로명이 제공됩니다.

  특수 읽기 전용 어트리뷰트들: 는 딕셔너리로 표현되는 모듈의 이름 공간입니다.

  사용자 정의 클래스(Custom classes)

  사용자 정의 클래스 형들은 보통 클래스 정의 때문에 만들어집니다 ( 섹션 참조). 클래스는 딕셔너리로 구현된 이름 공간을 갖습니다. 클래스 어트리뷰트 참조는 이 딕셔너리에 대한 조회로 변환됩니다. 예를 들어, 는 로 변환됩니다 (하지만 어트리뷰트에 접근하는 다른 방법들을 허락하는 여러 가지 훅(hook)이 있습니다.). 거기에서 어트리뷰트 이름이 발견되지 않으면, 어트리뷰트 검색은 부모 클래스들에서 계속됩니다. 이 부모 클래스 검색은 C3 메서드 결정 순서(method resolution order)를 사용하는데, 다중 상속이 같은 부모 클래스로 모이는 ‘다이아몬드(diamond)’ 계승 구조가 존재해도 올바르게 동작합니다. 파이썬이 사용하는 C3 MRO에 관한 좀 더 자세한 내용은 2.3 배포에 첨부된 문서 에서 찾아볼 수 있습니다.

  클래스 어트리뷰트 참조가 (클래스 라고 하자) 클래스 메서드 객체로 귀결될 때는, 어트리뷰트가 인 인스턴스 메서드 객체로 변환됩니다. 스태틱 메서드로 귀결될 때는, 스태틱 메서드 객체가 감싸고 있는 객체로 변환됩니다. 클래스로부터 얻은 어트리뷰트가 에 저장된 값과 달라지도록 만드는 다른 방법이 섹션에 나옵니다.

  클래스 어트리뷰트 대입은 클래스의 딕셔너리를 갱신할 뿐, 어떤 경우도 부모 클래스의 딕셔너리를 건드리지는 않습니다.

  클래스 객체는 클래스 인스턴스를 돌려주도록(아래를 보십시오) 호출될 수 있습니다(위를 보십시오).

  특수 어트리뷰트들: 은 클래스의 이름입니다. 은 클래스가 정의된 모듈의 이름입니다. 는 클래스의 이름 공간을 저장하는 딕셔너리입니다; 는 부모 클래스들을 저장하는 튜플입니다; 부모 클래스 목록에 나타나는 순서를 유지합니다; 은 클래스의 설명 문자열 이거나 정의되지 않으면 세계랭킹1위오피스타입니다; (없을 수 있는) 는 클래스의 바디를 실행하면서 수집된 들을 담은 딕셔너리입니다.

  클래스 인스턴스(Class instances)

  클래스 인스턴스는 클래스 객체를 호출해서 (위를 보십시오) 만들어집니다. 클래스 인스턴스는 딕셔너리로 구현되는 이름 공간을 갖는데, 어트리뷰트를 참조할 때 가장 먼저 검색되는 곳입니다. 그곳에서 어트리뷰트가 발견되지 않고, 인스턴스의 클래스가 그 이름의 어트리뷰트를 갖고 있으면, 클래스 어트리뷰트로 검색이 계속됩니다. 만약 발견된 클래스 어트리뷰트가 사용자 정의 함수면, 어트리뷰트가 인스턴스인 인스턴스 메서드로 변환됩니다. 스태틱 메서드와 클래스 메서드 객체 또한 변환됩니다. 위의 “사용자 정의 클래스(Custom Classes)” 부분을 보십시오. 클래스로부터 얻은 어트리뷰트가 클래스의 에 저장된 값과 달라지도록 만드는 다른 방법이 섹션에 세계랭킹1위오피스타 나옵니다. 만약 클래스 어트리뷰트도 발견되지 않고, 클래스가 메서드를 가지면, 조회를 만족시키기 위해 그 메서드를 호출합니다.

  어트리뷰트 대입과 삭제는 인스턴스의 딕셔너리를 갱신할 뿐, 결코 클래스의 딕셔너리를 건드리지 않습니다. 만약 클래스가 이나 메서드를 가지면, 인스턴스의 딕셔너리를 갱신하는 대신에 그 메서드들을 호출합니다.

  어떤 특별한 이름들의 메서드들을 가지면, 클래스 인스턴스는 숫자, 시퀀스, 매핑인 척할 수 있습니다. 섹션을 보십시오.

  특수 어트리뷰트들: 는 어트리뷰트 딕셔너리입니다; 는 인스턴스의 클래스입니다.

  I/O 객체 (파일 객체라고도 알려져 있습니다)

  는 열린 파일을 나타냅니다. 파일 객체를 만드는 여러 가지 단축법이 있습니다: 내장 함수, , 과 소켓 객체의 메서드 (그리고, 아마도 확장 모듈들이 제공하는 다른 함수들이나 메서드들).

  , , 는 인터프리터의 표준 입력, 출력, 에러 스트림으로 초기화된 파일 객체들입니다; 모두 텍스트 모드로 열려서 추상 클래스에 의해 정의된 인터페이스를 따릅니다.

  내부 형(Internal types)

  인터프리터가 내부적으로 사용하는 몇몇 형들은 사용자에게 노출됩니다. 인터프리터의 미래 버전에서 이들의 정의는 변경될 수 있지만, 완전함을 위해 여기서 언급합니다.

  코드 객체(Code objects)

  코드 객체는 바이트로 컴파일된(byte-compiled) 실행 가능한 파이썬 코드를 나타내는데, 그냥 라고도 부릅니다. 코드 객체와 함수 객체 간에는 차이가 있습니다; 함수 객체는 함수의 전역 공간(globals) (함수가 정의된 모듈)을 명시적으로 참조하고 있지만, 코드 객체는 어떤 문맥(context)도 갖고 있지 않습니다; 또한 기본 인자값들이 함수 객체에 저장되어 있지만 코드 객체에는 들어있지 않습니다 (실행 시간에 계산되는 값들을 나타내기 때문입니다). 함수 객체와는 달리, 코드 객체는 불변이고 가변 객체들에 대한 어떤 참조도 (직접 혹은 간접적으로도) 갖고 있지 않습니다.

  특수 읽기 전용 어트리뷰트들: 은 함수의 이름입니다; 는 위치 인자들 (위치 전용 인자와 기본값이 있는 인자들도 포함됩니다)의 총 개수입니다; 는 위치 전용 인자들 (기본값이 있는 인자들도 포함됩니다)의 개수입니다; 는 키워드 전용 인자들 (기본값이 있는 인자들도 포함됩니다)의 개수입니다; 는 함수가 사용하는 지역 변수들 (인자들을 포함합니다)의 개수입니다; 는 지역 변수들의 이름을 담고 있는 튜플입니다(인자들의 이름이 먼저 나옵니다); 는 중첩된 함수들이 참조하는 지역 변수들의 이름을 담고 있는 튜플입니다; 는 자유 변수(free variables)들의 이름을 담고 있는 튜플입니다; 는 바이트 코드 명령 시퀀스를 나타내는 문자열입니다; 는 바이트 코드가 사용하는 리터럴을 포함하는 튜플입니다; 는 바이트 코드가 사용하는 이름들을 담고 있는 튜플입니다; 은 컴파일된 코드를 제공한 파일의 이름입니다; 는 함수의 첫 번째 줄 번호입니다; 은 바이트 코드에서의 위치를 줄 번호로 매핑하는 법을 문자열로 인코딩한 값입니다 (자세한 내용은 인터프리터의 소스 코드를 참고하십시오); 는 필요한 스택의 크기입니다; 는 인터프리터의 여러 플래그(flag)들을 정수로 인코딩한 값입니다.

  다음과 같은 값들이 를 위해 정의되어 있습니다: 함수가 가변 개수의 위치 인자를 받아들이기 위해 사용되는 문법을 사용하면 비트 가 1이 됩니다; 임의의 키워드 인자를 받아들이기 위해 사용하는 문법을 사용하면 비트 이 1이 됩니다; 비트 은 함수가 제너레이터일 때 설정됩니다.

  퓨처 기능 선언 () 또한 코드 객체가 특정 기능이 활성화된 상태에서 컴파일되었는지를 나타내기 위해 의 비트들을 사용합니다: 함수가 퓨처 division이 활성화된 상태에서 컴파일되었으면 비트 이 설정됩니다; 비트 과 는 예전 버전의 파이썬에서 사용되었습니다.

  의 다른 비트들은 내부 사용을 위해 예약되어 있습니다.오피스타 공식 홈페이지의 포털 사이트는 무엇입니까

  만약 코드 객체가 함수를 나타낸다면, 의 첫 번째 항목은 설명 문자열이거나 정의되지 않으면 입니다.

  프레임 객체(Frame objects)

  프레임 객체는 실행 프레임(execution frame)을 나타냅니다. 트레이스백 객체에 등장할 수 있고 (아래를 보십시오), 등록된 추적 함수로도 전달됩니다.

  특수 읽기 전용 어트리뷰트들: 은 이전 스택 프레임 (호출자 방향으로)을 가리키거나, 이게 스택의 바닥이라면 ; 는 이 프레임에서 실행되는 코드 객체; 는 지역 변수를 조회하는데 사용되는 딕셔너리; 는 전역 변수에 사용됩니다; 는 내장된(intrinsic) 이름들에 사용됩니다; 는 정확한 바이트 코드 명령(instruction)을 제공합니다 (코드 객체의 바이트 코드 문자열에 대한 인덱스입니다).

  Accessing raises an

  with arguments and .

  특수 쓰기 가능 어트리뷰트들: 는, 이 아니면, 코드 실행 중의 여러 이벤트로 인해 호출되는 함수입니다 (디버거에서 사용됩니다). 보통 이벤트는 각 새 소스 줄에서 발생합니다 – 를 로 설정하면 이것을 비활성화할 수 있습니다.

  구현은 를 로 설정하는 것으로 요청되는 옵코드(opcode) 당 이벤트를 허용할 수 있습니다. 추적 함수에 의해 발생 된 예외가 추적되는 함수로 빠져나오면 정의되지 않은 인터프리터 동작을 유발할 수 있음에 주의해야 합니다.

  는 프레임의 현재 줄 번호입니다 — 트레이스 함수(f_trace)에서 이 값을 쓰면 해당 줄로 점프합니다 (오직 가장 바닥 프레임에서만 가능합니다). 디버거는 f_lineno 를 쓰기 위한 점프 명령을 구현할 수 있습니다 (소위 Set Next Statement).

  프레임 객체는 한가지 메서드를 지원합니다:

  트레이스백 객체(Traceback objects)

  트레이스백 객체는 예외의 스택 트레이스를 나타냅니다. 트레이스백 객체는 예외가 발생할 때 만들어지고, 를 호출해서 명시적으로 만들 수도 있습니다.

  묵시적으로 만들어진 트레이스백의 경우, 예외 처리기를 찾아서 실행 스택을 되감을 때, 각각 되감기 단계마다 현재 트레이스백의 앞에 트레이스백 객체를 삽입합니다. 예외 처리기에 들어가면, 스택 트레이스를 프로그램이 사용할 수 있습니다. ( 섹션 참조.) 가 돌려주는 튜플의 세 번째 항목이나 잡힌 예외의 어트리뷰트로 액세스할 수 있습니다.

  프로그램이 적절한 처리기를 제공하지 않는 경우, 스택 트레이스는 표준 에러 스트림으로 (보기 좋게 포맷되어) 출력됩니다; 만약 인터프리터가 대화형이면, 으로 사용자에게 제공합니다.

  명시적으로 생성된 트레이스백의 경우, 어트리뷰트를 어떻게 연결하여 전체 스택 트레이스를 형성해야 하는지를 결정하는 것은 트레이스백을 만드는 주체에게 달려 있습니다.

  특수 읽기 전용 어트리뷰트들: 은 현 단계에서의 실행 프레임입니다; 는 예외가 발생한 줄의 번호를 줍니다; 정확한 바이트 코드 명령을 가리킵니다. 만약 예외가 except 절이나 finally 절이 없는 문에서 발생하면, 줄 번호와 트레이스백의 마지막 명령(last instruction)은 프레임 객체의 줄 번호와 다를 수 있습니다.

  Accessing raises an

  with arguments and .

  특수 쓰기 가능 어트리뷰트: 는 스택 트레이스의 다음 단계 (예외가 발생한 프레임 방향으로)이거나 다음 全球排名第一오피스타 단계가 없으면 입니다.

  슬라이스 객체(Slice objects)

  슬라이스 객체는 메서드를 위한 슬라이스를 나타냅니다. 내장 함수 로 만들 수도 있습니다.

  특수 읽기 전용 어트리뷰트들: 는 하한(lower bound) 입니다; 은 상한(upper bound) 입니다; 은 스텝 값입니다; 각 값은 생략될 경우 입니다. 이 어트리뷰트들은 임의의 형이 될 수 있습니다.

  슬라이스 객체는 하나의 메서드를 지원합니다.

  스태틱 메서드 객체(Static method objects)

  스태틱 메서드 객체는 위에서 설명한 함수 객체를 메서드 객체로 변환하는 과정을 방지하는 방법을 제공합니다. 스태틱 메서드 객체는 다른 임의의 객체, 보통 사용자 정의 메서드를 둘러쌉니다. 스태틱 메서드가 클래스나 클래스 인스턴스로부터 읽힐 때 객체가 실제로 돌려주는 것은 둘러싸여 있던 객체인데, 다른 어떤 변환도 적용되지 않은 상태입니다. 둘러싸는 객체는 그렇더라도, 스태틱 메서드 객체 자체는 콜러블이 아닙니다. 스태틱 메서드 객체는 내장 생성자로 만듭니다.

  클래스 메서드 객체(Class method objects)

  스태틱 메서드 객체처럼, 클래스 메서드 객체 역시 다른 객체를 둘러싸는데, 클래스와 클래스 인스턴스로부터 그 객체를 꺼내는 방식에 변화를 줍니다. 그런 조회에서 클래스 메서드 객체가 동작하는 방식에 대해서는 위 “사용자 정의 메서드(User-defined methods)” 에서 설명했습니다. 클래스 메서드 객체는 내장 생성자로 만듭니다.

seo

Related Posts

오피스타 공식 홈페이지의 입구 홈페이지는 무엇입니까

Bitcoin Plus (xbc), bitcoinplus (bitcoinplus) 는 P2P 네트워크에서 실행되며, xbc 허위화 프로젝트의 회사오피스타공식 웹 사이트의 입구 방법은 어디에 있습니까?와 개발팀은 이 네트워크를 바꿀 능력이 없다. XBC 화폐는 네트워크의 모든 참가자가 변화에 동의하全球排名第一오피스타공식 홈페이지 입구 방법은 어떻게 찾나요지 않는 한,

오피스타 입구가 뭐예요

종이비행기의 공식 다운로드 주소는 무엇입니까? telegram 의 공오피스타 공식 홈페이지의 입구 홈페이지는 무엇입니까식 다운로드 주소는 무엇입니까? 종이비행기의 다운로드 방법은 무엇입니까?비트디지털화세계 랭킹 1 위오피스타어디예요폐는 블록체인 디지털화폐로서 디지털통화산업의 발전을 이끌었다. 구현은 비트코全球排名第一오피스타 공식 홈페이지 포털 사이트 주소는 어떻게 되나요