【问题标题】:Visual Studio Code keeps giving me indent or syntax errors when executing if statements?执行 if 语句时,Visual Studio Code 不断给我缩进或语法错误?
【发布时间】:2020-05-11 00:32:11
【问题描述】:
loc = 'Bank'

if loc == 'Auto Shop':
    print("Cars are cool!")
elif loc == 'Bank':
    print('Money is cool!')
elif loc == 'Store':
    print('Welcome to the store!')
else:
    print("I do not know much.")

我正在尝试修改一些初学者级别的 Python,并且一直在为我的脚本使用 Visual Studio Code(在 Mac 上)。每当我尝试运行代码块(例如上面的 if 语句)时,都会收到类似 "SyntaxError: invalid syntax""IndentationError: unexpected indent" 的错误代码。尝试再次进行我的缩进并检查我在 Sublime 中的缩进,这很好。该代码也在我的终端中运行。

我认为我的 VSC 出了点问题,它运行的是 Python 3.8,我在 Mac 终端中使用它来运行代码就好了,但在使用它的终端时表现得很时髦。

这让我很困扰,因为这意味着我可能需要切换编辑器,以便以后做更复杂的事情。

任何帮助将不胜感激。

【问题讨论】:

  • 一些 IDE 不喜欢空格和制表符的组合。我知道使用 Sublime Text 3,您可以突出显示所有代码并选择将空格转换为制表符或空格,因此始终保持一致。
  • 您应该将这些错误的完整回溯添加到您的问题中。这将指示它正在发生的代码行。
  • 始终共享整个错误消息。
  • 设置 VSC 向您显示空白,以便您查看是否使用制表符和空格
  • 我相信我也看到了这个问题,如果我删除 elif 问题就会停止,但这显然不是我想要的

标签: python macos visual-studio-code syntax indentation


【解决方案1】:

如果您逐行发送此代码,那么您可能会遇到代码与 REPL 所期望的不一致的情况。

我还要说,如果您想让代码更灵活,您可以稍微简化一下代码:

loc = 'Bank'
messages = {"Auto Shop": "Cars are cool!", "Bank": "Money is cool!", "Store": "Welcome to the store!"}
print(messages.get(loc, "I do not know much."))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-08-06
    • 1970-01-01
    • 2019-07-26
    • 2011-09-22
    • 1970-01-01
    • 1970-01-01
    • 2017-04-28
    • 2015-09-08
    相关资源
    最近更新 更多