【笔记】关于python自带解释器reload(sys)后无法正常执行

背景

周末,一个哥们听说我最近在学python爬虫,就让我帮忙写了个爬虫(菜鸟水平,很low),于是就利用周末的时间在我的破电脑上开始捣鼓了。

环境:win7 eclipse+pyde

场景描述:
今天把代码给他了,结果发现在他的电脑上(自带的python解释器)执行不了【顿时懵逼了 - -!】。于是我赶快用我的电脑也运行了下,结果同样执行不了【懵逼2.0–!】。这咋整呀,在eclipse上还是可以正常执行的,结果换了下运行环境就不可以了。
于是仔细核对了下,把自己之前写的一些脚本(奇low无比)瞅了瞅(差点让他去装eclipse了)。猜想是不是与reload(sys)有关,注释下,看可不可以,运行后发现是正常的,还真是这个问题。立马告诉他,把脚本的reload(sys)注释掉,就可以正常用了。【得瑟脸】

当时写爬虫的时候,因为爬取的页面得用gbk去解释,所以在文本顶部就默认了下gbk编码环境

接着百度查看了下才知道是怎么回事

执行reload(sys)后会重置sys模块特定的标准输入、标准输出和标准错误输出,使得输入和输出无法在IDLE中显示。

解决方案:

1、直接注释掉,不用
2、在reload之前把三个变量

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值