python打开方式错误_【我问 Crossin】python程序一闪而过,是我的打开方式不对?...

原标题:【我问 Crossin】python程序一闪而过,是我的打开方式不对?

除了在公众号、交流群组或论坛上提问,大家有想问的问题也可以直接在本栏目文章下留言,接受以下提问:

与编程相关的问题

工作咨询、学习方向建议

程序猿的日常

Crossin 多大年龄?

助教小哥长得帅不帅?有没有女朋友?

5df395299fbb4a2b9fb5a81744343ca5_th.jpeg

1. 双击py文件后,程序一闪而过,是怎么回事?要想正常运行怎么办?

原因是因为程序执行完毕后自动关闭了。

方法一:

通过 shell / 命令行 / ide 运行

# 以命令行为例C:UsersAdminister>python yourfile.py

方法二:

在文件结尾添加一句 input(),让程序等待你输入后再结束。

2. 异常处理的 finally 语句有什么作用?写在 finally 中的代码和直接写在 try…except 外部有什么不同?

区别在于:finally 下的语句无论是否出现异常,均会被执行。

try: dfdg = xidfg # 定义一个错误变量f = 2/ 0# 除0错误

exceptZeroDivisi ase: print(e)

finally: print( '程序结束') 运行结果 程序结束Traceback (most recent call last): File "E:githubcounterlearningtest.py", line 3, in dfdg = xidfgNameError: name 'xidfg' is not defined

由上面的代码可以看到,由于执行顺序的原因, 虽然 except不能处理变量定义错误,但最终仍然执行了 finally语句。

而写在 try…except 外部的语句,在程序发生异常而中断后是不能保证执行的。

try: dfdg = xidfg # 定义一个错误变量f = 2/0 # 除0错误

exceptZeroDivisi ase: print(e)print( '程序结束') 运行结果 Traceback (most recent call last): File "E:githubcounterlearningtest.py", line 12, in dfdg = xidfgNameError: name 'xidfg' is not defined

except 未能捕捉变量定义错误,直接报错,不会执行最后的打印。

3. 教程里的“猜数字”游戏,answer=raw_input(),然后比较answer和答案num的大小,为什么总是显示“too big”?

这个在昨天的直播中有提到。

因为 raw_input 得到的输入是字符串,无法直接和数字去比较大小。但在python2里,你这样做了,也不会报错,而是产生不可预知的结果。在python3里,则会直接报错。

Python2 中应改为:

answer = input()

Python3 中可使用:

answer = eval(input())

以上就是每周的内容。

哦,对了,助教小哥挺帅的��

近期文章推荐阅读:

欢迎加入

Crossin的编程教室

crossincode.com

新手入门QQ群:319476204

微信请加 crossin11 留言入群(新手/进阶)

请把我们分享给身边爱学习的小伙伴 :)

点击左下角“阅读原文”,查看更多学习资源返回搜狐,查看更多

责任编辑:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值