【发布时间】:2015-08-20 22:02:43
【问题描述】:
我正在尝试一步一步地阅读一本书,但我要么一无所获,要么出错。
谁能告诉我这是怎么回事?
import sys
class RedirectStdoutTo:
def _init_(self, out_new):
self.out_new=out_new
def _enter_(self):
self.out_old= sys.stdout
sys.stdout = self.out_new
def _exit_(self, *args):
sys.stdout = self.out_old
print('A')
with open('out.log', mode='w', encoding='utf-8') as a_file, RedirectStdoutTo(a_file):
print('B')
print('C')
当我在 Python 中运行时,我会写 python log.py
它返回一个错误说:
File "<stdin>", line 1
python ilog.py
^
SyntaxError: invalid syntax
【问题讨论】:
-
您是否尝试使用终端样式的命令从 Python 解释器中运行 Python 脚本?
-
你试图在什么操作系统上运行它?
-
在 Python 解释器中而不是在操作系统的控制台/终端中执行
python log.py就像启动你的汽车并告诉它给你一个三明治,而不是告诉你的朋友开车去接你一个三明治。 -
如果你想从命令行启动你的脚本,请确保你阅读了 Python shebang:stackoverflow.com/questions/6908143/…
-
还要注意它应该是
__init__(等人),而不是_init_。您缺少一组下划线。
标签: python input output stdout stderr