经常看到__future__:

from __future__ import absolute_import
from __future__ import print_function
from __future__ import division

......

解释:

Python的每个新版本都会增加一些新的功能,或者对原来的功能作一些改动。

有些改动是不兼容旧版本的,也就是在当前版本运行正常的代码,到下一个版本运行就可能不正常了。

从Python 2.7到Python 3.x就有不兼容的一些改动,比如2.x里的字符串用'xxx'表示str,Unicode字符串用u'xxx'表示unicode,

而在3.x中,所有字符串都被视为unicode,因此,写u'xxx'和'xxx'是完全一致的,而在2.x中以'xxx'表示的str就必须写成b'xxx',以此表示“二进制字符串”。

要直接把代码升级到3.x是比较冒进的,因为有大量的改动需要测试。

相反,可以在2.7版本中先在一部分代码中测试一些3.x的特性,如果没有问题,再移植到3.x不迟。

Python提供了__future__模块,把下一个新版本的特性导入到当前版本,于是我们就可以在当前版本中测试一些新版本的特性。

最新文章

  1. PHP的学习--使用phar打包
  2. jquery遍历的radio的取值问题
  3. 复选框输入Android Studio 如果修改LogCat的颜色,默认全是黑色看着挺不舒服的
  4. javascript的setTimeout以及setInterval休眠问题。
  5. [转]jquery.timer用法
  6. C语言字符数组越界现象
  7. MVC json
  8. redis采用序列化方案存对象
  9. MyLog
  10. SQL Server 2008 R2中配置作业失败后邮件发送通知
  11. 每日笔记-redis的理解及相关应用
  12. ES6进阶之路
  13. 《剑指offer》第五十一题(数组中的逆序对)
  14. 在nodejs里面是用类似配置文件的方法
  15. JSTL XML标签库 使用
  16. spring Ioc和DI
  17. 初学JavaSE
  18. svn如何提取文件更新列表
  19. nice & renice
  20. mybatis 插入实体与数据库中的字段不一致的解决方案

热门文章

  1. Anroid Studio 教程干货
  2. babel配置文件.babelrc
  3. UVA12716-连续区间内反向寻因子法
  4. UVA11732(Trie树)
  5. PAT (Basic Level) Practice (中文)1043 输出PATest (20 分)
  6. 转: VS 解决方案目录结构设置
  7. GYCTF 盲注【regexp注入+时间盲注】
  8. HashMap源码刨析(面试必看)
  9. JavaScript实现常见的数据结构
  10. swagger2使用