我可以导入python2.7的函数并将其绑定到python3.x中的另一个函数吗?

2024-09-29 21:29:13 发布

您现在位置:Python中文网/ 问答频道 /正文

有些python-2.7和python-3.x函数具有相同的名称,但执行方式不同。我可以通过更改python-3.xone中的py2.7函数的名称来导入和使用它吗?你知道吗

激励性的例子是python-2.7的“print”,即print "TEXT",与python3中的print("TEXT")相比,它不使用无括号。我可以通过将python2绑定到pr之类的东西来保持它的“打印”吗?你知道吗

(顺便说一句,我的问题是键入和转义括号。按键()比空格键更难按。另外,由于IDE会自动将它们放入,因此我需要将光标移出IDE。)

Note: I asked this previously, yet has been wrongly marked as a duplicate. Again, to be clear, I'm specifically asking if I can bind a python 2 function to a new name in order to use its functionality in python-3.x.

Can I bind python-2.7's `print` in python-3.x, allowing me to use `print` without parenthesis in python-3.x?

I do not know how to contact moderators via internal message or correct this wrongful flag.


Tags: to函数textin名称binduse方式
2条回答

真正的解决方案是配置IDE,而不是试图绕过那些配置问题。你知道吗

也就是说,python3中不存在带有空格和无括号的python2print语句。虽然您可以从python2中找到使用函数的方法,但是语法不能被使用。你知道吗

如果您真正的问题是python3的print()中的括号,那么就我所知,没有真正的解决方案。如果它是一个不同的函数,你可以一直这样做

def funcName(arg):
    return anotherFunc(arg)

或者作为切普纳的评论

funcName = anotherFunc

有效地重命名anotherFunc()。你知道吗

对于IDE特定的问题,可能有一种方法可以关闭自动括号(或者您可以只使用键盘上的箭头键),使用括号越多,使用它们的速度就越快,这可能是一件好事,因为它们基本上用于您将要使用的每个函数中。你知道吗

最后,最好不要强迫一种语言去做它实际上没有提供的特定事情。在Python中不使用GOTOs—它们不是内置的。您可以使用其他方法编写它们。在Python3中使用括号-不要试图更改它!还有另一个原因,不要改变你所描述的语言-它会降低代码的可读性。当你写作时,每个人都会明白你的意思

''.join(something)

但当你写的时候就不行了

randomFuncName(something)

然后在一些模糊的地方有一个类似于上面描述的函数,它重命名''.join。你知道吗

相关问题 更多 >

    热门问题