«python-internals» 태그된 질문

파이썬은 내부적으로 어떻게 작동합니까? (예를 들어) 설계 결정과 사용 된 내부 데이터 구조 및 알고리즘과 관련된 질문에 사용합니다.

4
셔플 된 목록을 복사하는 것이 훨씬 느린 이유는 무엇입니까?
셔플 된 range(10**6)목록을 10 번 복사하는 데 약 0.18 초가 걸립니다. (5 번 실행됩니다) 0.175597017661 0.173731403198 0.178601711594 0.180330912952 0.180811964451 셔플되지 않은 목록을 10 번 복사하는 데 약 0.05 초가 걸립니다. 0.058402235973 0.0505464636856 0.0509734306934 0.0526022752744 0.0513324916184 내 테스트 코드는 다음과 같습니다. from timeit import timeit import random a = range(10**6) random.shuffle(a) …

1
인터프리터가 유지 관리하는 정수 캐시는 무엇입니까?
Python의 소스 코드를 살펴본 PyInt_Object후 int(-5)~ int(256)(@ src / Objects / intobject.c) 범위 의 s 배열을 유지하고 있음을 알게되었습니다. 약간의 실험이 그것을 증명합니다. >>> a = 1 >>> b = 1 >>> a is b True >>> a = 257 >>> b = 257 >>> a is b False 그러나 …

1
파이썬 : 왜 *와 **가 /와 sqrt ()보다 빠릅니까?
코드를 최적화하는 동안 다음을 깨달았습니다. >>> from timeit import Timer as T >>> T(lambda : 1234567890 / 4.0).repeat() [0.22256922721862793, 0.20560789108276367, 0.20530295372009277] >>> from __future__ import division >>> T(lambda : 1234567890 / 4).repeat() [0.14969301223754883, 0.14155197143554688, 0.14141488075256348] >>> T(lambda : 1234567890 * 0.25).repeat() [0.13619112968444824, 0.1281130313873291, 0.12830305099487305] 그리고 또한: >>> from math import …

2
list ()는 list comprehension보다 약간 더 많은 메모리를 사용합니다.
그래서 나는 list물건 을 가지고 놀고 있었고 그것 list으로 만들어 지면 list()목록 이해보다 더 많은 메모리를 사용 한다는 이상한 점을 발견 했습니까? Python 3.5.2를 사용하고 있습니다. In [1]: import sys In [2]: a = list(range(100)) In [3]: sys.getsizeof(a) Out[3]: 1008 In [4]: b = [i for i in range(100)] In …

6
Python for 루프에서 반복자와 시퀀스에 동일한 이름을 사용할 수있는 이유는 무엇입니까?
이것은 더 개념적인 질문입니다. 최근에 Python에서 코드 조각을 보았습니다 (2.7에서 작동했으며 2.5에서도 실행되었을 수도 있음). for루프가 반복되는 목록과 목록의 항목 모두에 동일한 이름을 사용했습니다. , 이는 저를 나쁜 습관이자 전혀 작동하지 않아야하는 것으로 생각합니다. 예를 들면 : x = [1,2,3,4,5] for x in x: print x print x 수율 : …

4
반복하면서 세트에 추가하거나 제거 할 때 왜이 반복을 많이합니까?
파이썬 for-loop를 이해하려고 시도하면 {1}C 또는 다른 언어와 같이 반복을 수행하는지에 따라 한 번의 반복 결과 를 얻거나 무한 루프에 빠질 것이라고 생각 했습니다. 그러나 실제로는 그렇지 않았습니다. >>> s = {0} >>> for i in s: ... s.add(i + 1) ... s.remove(i) ... >>> print(s) {16} 왜 16 회 …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.