pythonshell即使在没有";“打印”;命令
我使用PythonIdle的编辑器编写了以下代码pythonshell即使在没有";“打印”;命令,python,python-3.x,Python,Python 3.x,我使用PythonIdle的编辑器编写了以下代码 import urllib.request print(urllib.request.urlopen('https://github.com').read().decode('utf-8')) 然后将代码保存为脚本。运行脚本后,pythonshell显示了我想要的页面源代码 当我将上述代码更改为: import urllib.request urllib.request.urlopen('https://github.com').read().
import urllib.request
print(urllib.request.urlopen('https://github.com').read().decode('utf-8'))
然后将代码保存为脚本。运行脚本后,pythonshell显示了我想要的页面源代码
当我将上述代码更改为:
import urllib.request
urllib.request.urlopen('https://github.com').read().decode('utf-8')
然后运行脚本,pythonshell没有显示任何内容。这是可以理解的
然而,对我来说奇怪的是,如果我在Python shell中以交互方式运行上述代码(没有打印的代码),Python shell仍然可以显示页面源代码,如您所见:
我不明白为什么
我使用的是Python 3.6.3。您使用的是交互式Python提示符。它会自动为您打印返回值,以便您可以看到所做操作的结果 尝试键入
3+2
。你知道这也不会打印任何东西,但你会看到结果
同样,如果将这两行放入一个文件中,则不会得到任何输出。您使用的是交互式python提示符。它会自动为您打印返回值,以便您可以看到所做操作的结果 尝试键入
3+2
。你知道这也不会打印任何东西,但你会看到结果
同样,如果将这两行放入一个文件中,则不会得到任何输出。这是因为shell正在打印执行结果。如果将函数调用分配给变量,则它将禁止打印
i、 这是因为shell正在打印执行结果。如果将函数调用分配给变量,则它将禁止打印
i、 e.
html=urllib.request.urlopen(…)
交互式Python shell中任何返回值但未分配给变量的语句都会在控制台上打印其repr
(表示形式)。如果将其分配给变量(即contents=urllib….
),则不会转储任何输出。默认情况下,python shell将打印您运行的命令的结果。这正是shell所做的,作为交互式运行的特殊情况。交互式Python shell中任何返回值但未分配给变量的语句都会在控制台上打印其repr
(表示形式)。如果将其分配给变量(即contents=urllib….
),则不会转储任何输出。默认情况下,python shell将打印您运行的命令的结果。这正是shell所做的,作为交互运行的特例。