python tkinter导入可移植性
我在家里的工作计算机和工作中的服务器上运行相同的非常小的python脚本,这台计算机将RDPs发送到服务器上。服务器使用公司标准的Python2,我在家里一直使用Python3。最近,我决定使用相同的脚本在这两个方面做相同的工作。一切都是一样的,除了一个人想要:python tkinter导入可移植性,python,tkinter,Python,Tkinter,我在家里的工作计算机和工作中的服务器上运行相同的非常小的python脚本,这台计算机将RDPs发送到服务器上。服务器使用公司标准的Python2,我在家里一直使用Python3。最近,我决定使用相同的脚本在这两个方面做相同的工作。一切都是一样的,除了一个人想要: from Tkinter import * 另一个想要一个字母大小写的变化: from tkinter import * 我如何使它像在不同python环境中工作的同一脚本一样可移植?我不想有两个脚本需要记住去关注。 有可能吗?这个
from Tkinter import *
另一个想要一个字母大小写的变化:
from tkinter import *
我如何使它像在不同python环境中工作的同一脚本一样可移植?我不想有两个脚本需要记住去关注。
有可能吗?这个
2to3
程序会将您的程序翻译成Python 3(有些,但并不总是完美的)。诀窍是以这样一种方式编写代码,使您的Python2能够成功(并且正确)转换
我建议您看看,这将有助于您维护兼容的源代码。程序将执行(一些但并不总是完美的)程序到Python 3的转换。诀窍是以这样一种方式编写代码,使您的Python2能够成功(并且正确)转换
我建议您查看一下,这将有助于您维护兼容的源代码。检查Python版本,并根据具体情况进行处理:
import sys
if sys.version_info[0] > 2:
from tkinter import *
else:
from Tkinter import *
检查Python版本并根据情况进行处理:
import sys
if sys.version_info[0] > 2:
from tkinter import *
else:
from Tkinter import *
或者尝试同时导入它们:-)
或者尝试同时导入它们:-)
您的导入行可以位于
try/except importorr
块内,或者您可以测试python的版本(使用sys.version
),您的导入行可以位于try/except importorr
块内,或者您可以测试python的版本(使用sys.version
)你能详细说明一下这将如何解决OP的问题吗?很简单。我没有尝试过(不是我的风格),但是aliva的例子应该在任何一种环境下都可以使用——如果一次导入失败,另一次应该可以。你能详细说明一下这将如何解决OP的问题吗?很简单。我没有尝试过(不是我的风格),但aliva的示例应该可以在任何一种环境中使用——如果一种导入尝试失败,那么另一种尝试应该可以使用。