Py学习  »  Python

空闲导入子进程syntaxerror,但不在mac osx终端的python3中

mac • 6 年前 • 1490 次点击  

MacOS 10.11.6上IDLE Python 3.7.1 shell窗口中的以下代码片段导致语法错误。
解决办法是什么?
在终端python 2.7.10或python3中运行的相同代码不会导致错误。

Python 3.7.1 (v3.7.1:260ec2c36a, Oct 20 2018, 03:13:28) 
[Clang 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license()" for more information.
>>> import subprocess
from time import strftime
import time
SyntaxError: multiple statements found while compiling a single statement
>>>
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/47357
文章 [ 1 ]  |  最新文章 6 年前
Terry Jan Reedy
Reply   •   1 楼
Terry Jan Reedy    6 年前

通常情况下,答案就在异常消息中。您应该只输入一个语句来响应idle的语句提示。几周前,我编辑了 IDLE doc 为了让这更清楚。

使用idle的shell,可以输入、编辑和调用完整的语句。 大多数控制台和终端只能在 时间。

当一个人将代码粘贴到shell中时,它不会被编译,而且可能 执行直到一次击中返回。可以先编辑粘贴的代码。如果有 将多个语句粘贴到shell中,结果将是 当多个语句被编译为一个语句时发生语法错误。

如果,响应提示 >>> ,您键入 import subprocess 单击return,idle将语句发送到用户进程中的python以执行导入。空闲则呈现一个新的 >>> 迅速。您输入了三个语句,但没有触发执行。我唯一知道的办法就是把这三个字同时粘贴起来。(如果你有别的办法,我想知道;-)。

要同时运行多个语句,请编辑或粘贴到一个文件中并运行它。我保存了一个tem.py文件。我通常用“文件”=>“最近使用的文件”打开它。