Python 脚本在shell中工作,但不能作为空闲文件

Python 脚本在shell中工作,但不能作为空闲文件,python,shell,command-line,eof,Python,Shell,Command Line,Eof,在shell上逐行执行以下代码时,它给出了预期的输出: >>> name=input("Please give your full name : ") Please give your full name : ins vikranth >>> ListName=name.split(' ') >>> outputString=ListName[1]+' '+ListName[0] >>> print(outputString

在shell上逐行执行以下代码时,它给出了预期的输出:

>>> name=input("Please give your full name : ")
Please give your full name : ins vikranth
>>> ListName=name.split(' ')
>>> outputString=ListName[1]+' '+ListName[0]
>>> print(outputString)
vikranth ins
代码不是以文件的形式全部运行,而是在shell上逐行运行。 代码是:

name=input("Please give your full name : ")
ListName=name.split(' ')
outputString=ListName[1]+' '+ListName[0]
print(outputString)
错误消息是:

Please give your full name : ins vikranth
Traceback (most recent call last):
  File "ReverseName.py", line 1, in <module>
    name=input("Please give your full name
  File "<string>", line 1
    ins vikranth
               ^
SyntaxError: unexpected EOF while parsing
请提供您的全名:ins vikranth
回溯(最近一次呼叫最后一次):
文件“ReverseName.py”,第1行,在
name=输入(“请给出您的全名
文件“”,第1行
维克兰特酒店
^
SyntaxError:分析时出现意外的EOF

为什么会发生这种情况?

@Babu brother代码对我来说似乎没问题,但您可能会忘记某一点。如果某人有中间名,则会导致错误。当用户键入超过2个单词时,您有2个数组位置,这会导致意外的文件结尾,因为缺少位置,例如足球运动员凯文·普林斯·博阿滕。您可能需要查找此位置动态内存管理

发生这种情况的原因是您的python版本…您的空闲时间是
python 3.X
,而您的文件正在使用
python 2.X
进行“翻译”(解释)…因此有两个简单的解决方案:

1/坚持使用
Python3.X
-您的代码不会更改,只需更改解释器即可

2/将其编辑为与python 2.X兼容:

name=raw_input("Please give your full name : ")
这里还有两个在线编译器,您可以在其中看到不同之处:

Python 3.7->


Python 2.7->

您的代码适合我(Python 3.7.2),没有错误。您如何运行文件
ReverseName.py
?嗯,我可能遗漏了一些内容,但在我这方面它是不可复制的,您如何启动它?
解析时出现意外的EOF
意味着有一个字符串没有正确引用。
输入()上是否缺少
row?@adrianus我以$python ReverseName.py的身份运行程序,结果出现了错误。这次我尝试了$python3 ReverseName.py,一切正常。python不编译我知道…我只是不知道如何编写它…这就是为什么我把它放在一个“”中,我认为
解释的
很好:)@StyleZ pease让我知道如何将解释器更新为3.x,就像shell一样。删除Python2.7,然后正常安装Python3.7,或者您可以这样做:我的代码接受4个单词并按预期输出$请提供您的全名:abc pqr xyz lmn>>lmn xyz xyz abcname=input(“请提供您的全名:”)ListName=name.split(“”)outputString=ListName[3]+“”+ListName[2]+“”+ListName[2]+“”+ListName[0]print(outputString)@A.Toraman