在过去的半个小时里,我一直在努力找出这段代码的问题所在。它应该是非常直接的。在这一点上,我实际上已经从文档中复制了它。但无论我尝试什么,我都会收到语法错误。
这是代码:
def addfiles(folder):
foldercont = [os.path.normcase(f) for f in os.listdir(folder)]
for x in foldercont:
if os.path.isfile(x) == True:
files.append(os.path.realpath(x)
if os.path.isdir(x) == True:
addfiles(os.path.realpath(x))
每当我运行此程序时,我都会收到错误
if os.path.isdir(x) == True:
^
SyntaxError: invalid syntax
然而,如果我在交互式解释器中编写模棱两可的代码,它运行得很好。
这个方法可以简单地不在if循环或其他什么中使用吗?
谢谢你的帮助。在这一点上我真的很沮丧。。。呵呵。
此行缺少一个括号:
files.append(os.path.realpath(x)
^
Python抱怨True:
位,因为它期望一个类似的语句
(x if condition else y)
正如jcomeau_ictx所说,在检查布尔值时也应该省略== True
:
if x:
do_something
if not y:
do_something_else
您在前一行缺少一个圆括号。