문제

PY3K 방금 나왔습니다 그리고 멍청이가 있습니다 깔끔한 새로운 것들! 궁금한 점이 있습니다. 왜 그렇게 Pythonistas가 가장 흥분 되는가? 어떤 기능이 매일 코드를 작성하는 방식에 영향을 미치거나 기대 했습니까?

도움이 되었습니까?

해결책

내가 관심있는 몇 가지가 있습니다.

다른 팁

나는 그것을 희망한다 예외 체인 캐치. 아래에 제시된 반포 스크린으로 인한 예외 스택 추적 손실은 오랫동안 내 애완 동물을 낳았습니다.

try:
   doSomething( someObject)
except:
   someCleanup()

   # Thanks for passing the error-causing object,
   # but the original stack trace is lost :-(

   raise MyError("Bad, bad object!", someObject)

알고 있습니다. 컨텍스트 정보를 원래 예외에 추가합니다. 그리고 원래 스택 추적을 보존하는 것이 가능했지만 정말 추악한 해킹이 필요했습니다. 이제 당신은 할 수 있습니다 해야 한다!) 단지:

raise MyError("Bad, bad object!", someObject) from original_exception

위의 두 가지를 쉽게 얻을 수 있습니다. 따라서 잃어버린 스택 추적에 대한 나의 거룩한 사명의 일부로 :

여러분, 잊지 마세요 ~에서 예외를 예외로 할 때 조항! 고맙습니다.

솔직히 말해서, 그것 중 어느 것도. 아마도 새로운 구문 중 일부를 사용해야하지만 주로 빠르고 간단한 스크립트와 정규 표현식에 Python을 사용합니다.

나는 새로운 기능이 많은 사람들이 많은 사람들을 조금 더 쉽게 만들고 몇몇 사람들에게는 몇 가지 큰 것들을 쉽게 만들 것이라고 생각합니다. 그러나 나는 많은 사람들이 생산성에서 큰 이익을 얻게 될 것이라는 주장에 회의적입니다.

요컨대, 이러한 변화는 전반적으로 조금 더 나아질 것이라고 생각하지만 기적을 기대하지는 않습니다.

기능은 많지 않지만 라이브러리 정리가 큰 도움이 될 것이라고 생각합니다. 새로운 파이썬 프로그래머에게. 한 번 이상 나는 파이썬에서 무언가를하고 싶었습니다. 그 기능을 제공하는 두 개의 포함 라이브러리를 찾기 위해서만 분명한 이유없이 다른 하나를 선택 해야하는 이유는 없었습니다.

다음은 Python 2.x Python 3과 관련된 새로운 기능 및/또는 차이점을 설명하는 좋은 기사입니다.

http://www.b-list.org/weblog/2008/dec/05/python-3000/

그들이 해석 된 언어로 가능한 가장 작은 마이그레이션 과정을 달성하기 위해 한 일에도 불구하고, 나는 Python3의 전체 출시를 10 년의 고통스러운 이주 경로로 발견했습니다. 그러므로 나는 그것이 특히 끌리는 것을 발견하지 못한다.

그들이 한 개선은 모두 좋고 중요합니다. 문자열에 대한 두 가지 유형은 어디에서나 실제 성가신 소스 였으므로 유니 코드 객체에서 제거되고 바이트 객체를 제쳐두고 지금 유니 코드 str을 소개했습니다.

Bignum vs. Num -Change는 편의에서 나온 것이었고 나는 또한 좋은 선택이라고 생각합니다. 전반적으로 그들은 지난 10 년 동안 축적 한 유해한 구성 요소에서 언어를 청소했습니다.

두 번째로 최악의 일은 속도가 이미 파이썬의 문제가되지 않는 것처럼 10% 느린 구현이었습니다.

나는 Python3의 출시가 Python의 명성을 향상시키지 않고 추진한다고 생각합니다. 지금 그들은 도서관 지원에 관한 언어로 처음으로 돌아 왔습니다.

할 필요가 없습니다 ..

  • 사용에 대해 걱정할 필요가 없습니다 unicode() 또는 u"".

  • 문서를 검색 할 필요가 없습니다 urllib urllib2 그리고 httplib 해당 기능 위치를 찾으려면 파일을 인코딩하고 게시물 요청을 통해 업로드해야합니다.

  • Wether에 대해 걱정할 필요가 없습니다 except TypeError, something: 잡을거야 TypeError 그리고 something, 또는 TypeError `뭔가 ..

반대로, 문서를 다시보아야합니다! 나는 Python을 충분히 알고 있다는 것을 알고 있습니다. 지금은 PYDOC를 언급하지 않고 대부분의 일을 할 수 있지만, 내가 할 때마다 다른 유용한 모듈이나 기능을 발견합니다.

인쇄 문. <sniff> 벌써 놓치기 시작했습니다.

실제로 Python 2.6에 가기 전에 우리는 퍼지고 있습니다. print 유리하게 logging.debug. 이것은 단지 사용하는 습관에서 벗어나기위한 것입니다. print 우연히 디버깅, 지원 및 개발.

남아있는 것은 실제로 STDOUT에서 물건을 생산하는 일부 프로그램입니다. 이를 위해 라이브러리 중 하나에 2.6/3.0 호환 "인쇄"기능을 소개 할 수 있습니다.

사전 이해력이 반드시 지구 산산이 부족은 아니지만 매우 좋습니다.

하는 동안 {k: v for k, v in list} 보다 길다 dict(list) 더 유연하고 자기 설명입니다.

Python 3의 가장 과소 평가 된 특징 중 하나는 추상 기본 클래스의 도입입니다. 이것은 파이썬 프로그래밍에 혁명을 일으키지 않을 것이지만 느슨한 오리 타이핑 접근 방식에서 더 나은 정의 인터페이스의 방향으로 흥미로운 전환을 나타냅니다.

자세한 내용은에서 찾을 수 있습니다 PEP 3119.

나는 언어를 배우는 동기로 Python 3을 출시 할 때 거의 모든 것입니다.

유니 코드 (UTF-8)는 영어를 사용하지 않는 국가에 사는 사람들에게 정말 중요합니다.

나는 항상 잊어 버리기 때문에 파일의 시작 부분에서 인코딩을 지정하는 것을 좋아하지 않았습니다. 일반적으로 내 텍스트는 UTF-8을 사용하고 있기 때문에 ASCII와 호환되므로 인코딩 사양없이 작동합니다. 그러나 내 이름 (악센트와 함께) 또는 € 표시를 쓰면 끊어집니다 ... uxxxx 표현으로 유니 코드 문자를 쓰게되었지만 약간 비밀입니다!

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top