2016-11-28 76 views
-4

我认为下面的代码片段是用python 3编写的,而我的python 2不能运行它。 '结束'有一些问题。我怎么修复它?我不知道什么是结束后的逻辑我是非常新的python从python 3到Python 2(print())

任何帮助非常感谢!

def myPrint(itp): 
    for i in range(10): 
     print("**",end=="") 
     for j in range(10): 
      print(itp[i][j],"**",end=="") 
     print() 
+0

“有些问题”...你有没有试过阅读关于Python 2的'print'语句和Python 3的'print'函数?它看起来像你有一个错误信息,并立即问一个问题,而没有做任何研究(在问一个新问题之前,你会这样做)。 – TigerhawkT3

回答

0

你在你的代码的两个错误,你需要end=""更换两end==""。您不应该将参数end与空字符串进行比较,但您希望以空字符串结束打印,因此请为参数end分配一个参数。

Python 3.x中,end=''部分将在显示的字符串而不是换行符后面放置任何参数end(此处为空字符串)。

如果你想拥有的python2python3打印功能,只需要做一个import:

from __future__ import print_function 
+0

我知道,但我得到一个错误SyntaxError:无效的语法 – StatLearner

+0

你能显示错误吗? – Jarvis

+0

现在好了它变得越来越好了,但它不会允许我打印如下简单表达式:print var – StatLearner

0

(我假设双==后end是一个错字结束为kwarg决定结束线;代码可能原本是print("**",end="")一个=字符)

要获得打印功能的语义,你可以设置__future__ flag print_function,用

开始您的文件0
from __future__ import print_function 

请注意,在Python 2下运行完整的Python 3程序所需的更改比简单启用某些未来标志(当您添加它时,考虑启用unicode_literals)要广泛得多。到目前为止,运行Python 3程序的最简单方法是安装Python 3解释器。