Python 2.6 正式版发布

Python 2.6 正式版发布

刚看新闻phthon 2.6 release了~~

http://www.python.org/ftp/python/2.6/Python-2.6.tar.bz2

We are pleased to announce the release of Python 2.6 (final), a new production-ready release, on October 1st, 2008.
是不是意味着2.5被淘汰了?


QUOTE:
原帖由 jjj137 于 2008-10-2 20:11 发表
是不是意味着2.5被淘汰了?

非也非也。。
2.6是2.x与3.x的过度版

基本是2.5的修正版,同时会注名3.x已经放弃的函数或特性
恭喜恭喜。
from        张沈鹏 <zsp007@gmail.com>
reply-to        python-cn@googlegroups.com
to        python-cn@googlegroups.com
date        Thu, Oct 2, 2008 at 05:36
subject        [CPyUG:67058] Python2.6正式发布,枚举一下我比较感兴趣的新特性
mailing list        <python-cn.googlegroups.com> Filter messages from this mailing list
mailed-by        googlegroups.com
signed-by        googlegroups.com
       
hide details 05:36 (16 hours ago)
       
       
Reply
       
       
1.
http://docs.python.org/dev/whats ... -the-with-statement

with特性正式启用,文档中这中用法很cool

db_connection = DatabaseConnection()
with db_connection as cursor:
   cursor.execute('insert into ...')
   cursor.execute('delete from ...')
   # ... more operations ...

应该也可以这样
with xxx.profile() as p:
  p.xxx=111
  p.update_xxx(111)
#结束时刷新缓存

当然,怎么自己写支持with的模块呢?

http://docs.python.org/dev/whats ... e-contextlib-module

2.
http://docs.python.org/dev/whats ... stract-base-classes
加入了虚函数

from abc import ABCMeta, abstractmethod

class Drawable():
   __metaclass__ = ABCMeta

   @abstractmethod
   def draw(self, x, y, scale=1.0):
       pass

   def draw_doubled(self, x, y):
       self.draw(x, y, scale=2.0)

3.

新的8进制和2进制的表示方式,我喜欢2进制

Python 2.6 doesn't drop support for a leading 0 signalling an octal
number, but it does add support for "0o" and "0b":

>>> 0o21, 2*8 + 1
(17, 17)
>>> 0b101111
47

4.
Class Decorators
恩,可以少写一点元类了

class A:
pass
A = foo(bar(A))


@foo
@bar
class A:
pass

5.
Per-user site-packages Directory
官方的virtual python方式

6.
很方便的并行技术,有点复杂,只是大概看了一下...

http://docs.python.org/dev/whats ... iprocessing-package

7.类似moko模板的string构建

http://docs.python.org/dev/whats ... d-string-formatting

8.
让人不爽的改动

http://docs.python.org/dev/whats ... on-handling-changes

try:
   ...
except (TypeError, ValueError):#不能写except TypeError, ValueError
   ...

9.
哇,可以这样.官方也玩magic,我以后有借口了

class C(object):
   @property
   def x(self):
       return self._x

   @x.setter
   def x(self, value):
       self._x = value

   @x.deleter
   def x(self):
       del self._x
如果是这样,应该可以直接什2.6
我先在2.5观望几天
wxPython还没有支持Python2.6捏,继续观望一阵子先,哈哈哈
2.6版本是个过渡版本。
承上启下,地位特殊且重要。