【问题标题】:python debugger executes while command line fails the exact same code snippetpython调试器在命令行失败时执行完全相同的代码片段
【发布时间】:2019-01-31 19:37:31
【问题描述】:

我有一个奇怪的情况,即加载了一个 jason 文件,然后提取了一些数据。 不知何故,这个 sn-p 在我使用 VS Code 调试器时起作用(即开始调试或不调试就开始)。

conn.request("GET", reqString, payload)
res = conn.getresponse()
data = res.read()
#print(data.decode("utf-8"))
data_json = json.loads(data)
print(type(data_json))
ThePages = data_json.get('total_pages')
for j in range(1,ThePages):
        #print('Processing page #', j)

奇怪的是,当我从命令行运行 data_json 时,我得到 TypeError 是 NoneType,而不是当我使用调试器运行它时(无错误)字典类型。

File "script.py", line 60, in main
    for j in range(1,ThePages):

TypeError: 'NoneType' 对象不能被解释为整数

知道(所有在 VS 代码中)相同的代码 sn-p 如何在调试器中无错误地运行,但从终端或 Anaconda Prompt 不加载任何内容吗?

【问题讨论】:

  • VS Code 是否使用不同的 python 环境? virtualenvs 在玩吗? VS Code 是否通过代理访问网络?可能有很多因素会影响这一点。
  • 没有虚拟环境。我只是打开 VS Code 并开始编码。我不知道有任何特殊代理或任何特殊设置可以解释 VS Code 调试器(有效)、VS Code 终端(无效)和 Anaconda Prompt(无效)之间的区别。

标签: python json visual-studio-code visual-studio-debugging themoviedb-api


【解决方案1】:

想通了。命令行加载了一个列表。程序员错误。

【讨论】:

    猜你喜欢
    • 2014-09-18
    • 1970-01-01
    • 1970-01-01
    • 2019-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-07
    • 1970-01-01
    相关资源
    最近更新 更多