+ -
当前位置:首页 → 问答吧 → 刚开始学习Python,想向大家请教一些非常基础的问题

刚开始学习Python,想向大家请教一些非常基础的问题

时间:2010-10-22

来源:互联网

我刚开始学习Python,想向大家请教一些非常基础的问题

版本:python 2.7
启动了python Shell,然后用它启动了一个新窗口(ctrl+N),输入了以下内容
Python code

import sys
sys.version 
type(int)
1+2*4
print 1+2*4



按F5,保存脚本执行后,只得到一个结果9,请问其它结果为什么没有?
导入了模块sys,为什么没显示出版本?有没有sys.exit()这个函数?

作者: Dic4000   发布时间: 2010-10-22

就一个print,你还想输出什么?

作者: ilikeperl   发布时间: 2010-10-22

引用 1 楼 ilikeperl 的回复:

就一个print,你还想输出什么?

可我在python shell里输出是有结果的(有4个输出),我不明白为什么两种方式输出的结果不一样

作者: Dic4000   发布时间: 2010-10-22

在shell下每一行都会显示
存成文件就没有了

作者: caizhanfei   发布时间: 2010-10-22

引用 2 楼 dic4000 的回复:
引用 1 楼 ilikeperl 的回复:

就一个print,你还想输出什么?

可我在python shell里输出是有结果的(有4个输出),我不明白为什么两种方式输出的结果不一样

呵呵,不是这样的,python shell会将每条语句的结果输出,所以才叫"交互"解释器。
而保存成脚本只有执行输出调用才行, 比如print。
不然你想想每执行一条都输出那程序得乱成什么样子啊, 也没必要。
shell一般多用于快速测试代码,真家伙还是在脚本里。

作者: I_NBFA   发布时间: 2010-10-22

引用 4 楼 i_nbfa 的回复:
呵呵,不是这样的,python shell会将每条语句的结果输出,所以才叫"交互"解释器。
而保存成脚本只有执行输出调用才行, 比如print。
不然你……


谢谢,明白了.还有个问题:在python shell中,我导入sys模块后,然后调用sys.exit(),可是提示没有这个方法.为什么呢?书上说是有这个sys.exit()东东的

作者: Dic4000   发布时间: 2010-10-22

引用 5 楼 dic4000 的回复:
引用 4 楼 i_nbfa 的回复:
呵呵,不是这样的,python shell会将每条语句的结果输出,所以才叫"交互"解释器。
而保存成脚本只有执行输出调用才行, 比如print。
不然你……


谢谢,明白了.还有个问题:在python shell中,我导入sys模块后,然后调用sys.exit(),可是提示没有这个方法.为什么呢?书上说是有这个sys.exit()东东的

sys.exit是终止程序(结束解释器),这个东西应该有的,把代码和错误信息发上来看看

作者: I_NBFA   发布时间: 2010-10-22

引用 6 楼 i_nbfa 的回复:
sys.exit是终止程序(结束解释器),这个东西应该有的,把代码和错误信息发上来看看


Traceback (most recent call last):
  File "<pyshell#16>", line 1, in <module>
  sys.exit()
SystemExit

作者: Dic4000   发布时间: 2010-10-22

引用 7 楼 dic4000 的回复:
引用 6 楼 i_nbfa 的回复:
sys.exit是终止程序(结束解释器),这个东西应该有的,把代码和错误信息发上来看看


Traceback (most recent call last):
File "<pyshell#16>", line 1, in <module>
sys.exit()
SystemExit

这不是没找到,sys.exit会触发SystemExit异常,IDLE把它打印出来了。

作者: I_NBFA   发布时间: 2010-10-22

引用 8 楼 i_nbfa 的回复:

这不是没找到,sys.exit会触发SystemExit异常,IDLE把它打印出来了。


为什么会触发SystemExit异常,是不是和我的平台有关,我是在Windows下开发.

作者: Dic4000   发布时间: 2010-10-22

引用 9 楼 dic4000 的回复:
引用 8 楼 i_nbfa 的回复:

这不是没找到,sys.exit会触发SystemExit异常,IDLE把它打印出来了。


为什么会触发SystemExit异常,是不是和我的平台有关,我是在Windows下开发.

异常是种机制并不总是代表出错,无论什么平台都会触发SystemExit,就是通知你程序要结束了。
你可以截获它阻止退出,或者放任自流终止程序。

作者: I_NBFA   发布时间: 2010-10-22