编程语言
首页 > 编程语言> > python _2or3模块?

python _2or3模块?

作者:互联网

我正在编写一个模块,让我可以在python 3中编写代码,但是仍然可以在python 3中运行.实际上看起来很简单……我还应该添加其他内容吗?从我在交互式解释器上的(有限的)想法来看,将来的导入不会影响python 3,因此被视为冗余.

# _2or3.py
'''
Common usage:

from __future__ import print_function, nested_scopes, division, absolute_import, unicode_literals
from _2or3 import *
'''

import sys

if sys.version[0] == '2':
   range = xrange
   input = raw_input 

显然,有些事情是您通常无法在3中完成的(例如字典压缩),并且这些语言之间存在一些陷阱(例如字节码.看起来您永远不要使用字节)

任何意见,将不胜感激.

解决方法:

签出six,这已经做到了,并加载更多.它还具有可帮助您在两个版本中执行二进制和Unicode的方法.但是,并非所有需要做的技术都可以通过这种方式完成,特别是在需要支持Python 2.5或更早版本的情况下.我尝试覆盖其中的大部分in the book,但我确定我错过了一些.

标签:python-3-x,python-2-x,python,programming-languages
来源: https://codeday.me/bug/20191208/2092386.html