既然 Python 2 和 Python 3 不兼容,很多 Pypi 包是如何做到既可用于 Python 2,又可用于 Python 3 的?

2015 年 1 月 12 日
 kidlj
4015 次点击
所在节点    Python
7 条回复
jiang42
2015 年 1 月 12 日
six
Muninn
2015 年 1 月 12 日
关键代码写判断呗。。。

有的是用six之类的转换,但是不靠谱。。。
zhicheng
2015 年 1 月 12 日
因为可以 import __future__
geeklian
2015 年 1 月 12 日
也不是完全不兼容,很多库只是名字的区别,甚至就是大小写区别。if version《3:import XXX as xxx else :import xxx
whtsky
2015 年 1 月 12 日
from __future__ import xxx

try:
except:

sys.version_info
anjunecha
2015 年 1 月 12 日
这是官方关于 __future__ 的文档 https://docs.python.org/2.7/library/__future__.html
zhyu
2015 年 1 月 12 日
建议看看这个 How to write forwards compatible Python code: http://lucumr.pocoo.org/2011/1/22/forwards-compatible-python/

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/161435

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX