操作系统模块有什么我没有得到的吗?



在过去的半个小时里,我一直在努力找出这段代码的问题所在。它应该是非常直接的。在这一点上,我实际上已经从文档中复制了它。但无论我尝试什么,我都会收到语法错误。

这是代码:

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

您在前一行缺少一个圆括号。

相关内容

  • 没有找到相关文章

最新更新