为什么Python结果输出只有一行

Python09

为什么Python结果输出只有一行,第1张

你这里出错的原因是直接在input函数里面给了初值,你以为这个值会被int函数转换成整数4传递给x,但是实际上并不会。

input函数的用法是在程序执行的时候,从标准输入流里读取数据,也就是程序执行到这一步的时候,会在命令行里等你输入一个值。但是你这里直接给出了一个字符串'4',input函数会直接输出它,然后返回一个空字符串给x,但是执行int()方法转换的时候,无法把空字符类型转为整数类型,所以这个时候程序就出错了停止执行,这就是为什么你看到的输出只有一个4,而没有其他的输出值的原因。

最后一行的输出也是错的,你的a列表长度只有3个,但是你却输出了a[4],a[8],a[3],到了这一步也只会抛出一个索引超出的异常,根本不可能得到你想要的结果。

不知道我讲清楚了没有,希望可以帮助到你。

在python中,可以使用内置函数inspect.currentframe()来获取当前执行的调用栈中的帧对象,然后使用帧对象的f_lineno属性来获取当前行号,最后使用print()函数将该行号打印出来。

具体代码类似这样: