Python 删除cStringIO.StringIO的已用部分
这段代码。。输出将是什么 第1条打印语句的输出 回溯(最近一次呼叫最后一次): 文件“C:\Users\manojtut\Desktop\untitled-1.py”,第9行,在 p=100/0 ZeroDivisionError:整数除法或模零除法 第二个print语句的输出 回溯(最近一次呼叫最后一次): 文件“C:\Users\manojtut\Desktop\untitled-1.py”,第9行,在 p=100/0 ZeroDivisionError:整数除法或模零除法 回溯(最近一次呼叫最后一次): 文件“C:\Users\manojtut\Desktop\untitled-1.py”,第16行,在 q=100/0 ZeroDivisionError:整数除法或模零除法 正如您所看到的,在第一个zerodivision遇到的异常将在第二个print语句中再次打印,这是我不希望看到的。我是否可以消除/清除第一个异常回溯,以便在第二个print语句中只能打印第二个异常的回溯?添加以下内容:Python 删除cStringIO.StringIO的已用部分,python,string,exception,Python,String,Exception,这段代码。。输出将是什么 第1条打印语句的输出 回溯(最近一次呼叫最后一次): 文件“C:\Users\manojtut\Desktop\untitled-1.py”,第9行,在 p=100/0 ZeroDivisionError:整数除法或模零除法 第二个print语句的输出 回溯(最近一次呼叫最后一次): 文件“C:\Users\manojtut\Desktop\untitled-1.py”,第9行,在 p=100/0 ZeroDivisionError:整数除法或模零除法 回溯(最近一次呼
import os, sys
from cStringIO import StringIO
import traceback
old_stdErr = sys.stderr
sys.stderr = mystdErr = StringIO()
try:
p = 100/0
except Exception:
traceback.print_exc(file=sys.stderr)
print mystdErr.getvalue() ### -- 1st Print statement
try:
q = 100/0
except Exception:
traceback.print_exc(file = sys.stderr)
print mystdErr.getvalue() ### -- 2nd Print statement
在第二个街区之前<代码>重置将文件位置重置为开头,并从那里开始写入<代码>截断删除当前位置之后的所有数据。如果省略“truncate”,则流中的数据将从后续写入中被覆盖。添加以下内容:
import os, sys
from cStringIO import StringIO
import traceback
old_stdErr = sys.stderr
sys.stderr = mystdErr = StringIO()
try:
p = 100/0
except Exception:
traceback.print_exc(file=sys.stderr)
print mystdErr.getvalue() ### -- 1st Print statement
try:
q = 100/0
except Exception:
traceback.print_exc(file = sys.stderr)
print mystdErr.getvalue() ### -- 2nd Print statement
在第二个街区之前<代码>重置将文件位置重置为开头,并从那里开始写入<代码>截断删除当前位置之后的所有数据。如果省略了“truncate”-流中的数据将从后续写入中被覆盖。以前未找到重置函数的引用。谢谢,伙计。以前没有找到重置功能的参考。谢谢你,伙计。