关于Python语法无效:Python语法无效 – 语法无效

Python Invalid syntax - Invalid syntax

本问题已经有最佳答案,请猛点这里访问。

我有以下代码来提取特定文件夹中所有文件的名称(包括其子文件夹中的所有文件):

1
2
3
4
5
6
7
8
import sys,os

root ="C:\Users\myName\Box Sync\Projects\Project_Name"
path = os.path.join(root,"Project_Name")

for path, subdirs, files in os.walk(root):
    for name in files:
        print os.path.join(path, name)

不幸的是,它抛出以下错误:

1
2
3
>   File"<ipython-input-7-2fff411deea4>", line 8
>     print os.path.join(path, name)
>            ^ SyntaxError: invalid syntax

我正在尝试在Jupyter Notebook中执行脚本。 我也尝试将其保存为.py文件并通过Anaconda提示运行它但收到了同样的错误。 有人可以指出我哪里出错了吗? 我是Python的新手。

谢谢


python3中,print函数需要像这样:

1
print(os.path.join(path, name))

有关从python 2到3的打印功能更改的更多信息,请检查以下链接:

  • 打印是一种功能
  • PEP-3105
  • Python 3.x中的新打印函数优于Python 2打印语句的优势是什么?

这是Python 2 Vs Python 3的问题。

在Python 2中,print不使用括号,如:

1
print 42

在Python 3中,print是一个函数,必须用括号调用,如:

1
print(42)