Python3.5报错:获悉当前工作目录中的.py文件?
正在看《编程入门(第三版)》,参考书上想写一个程序查看当前工作目录下的.py文件,却报错,求解答,谢谢。
【代码】
# 只获悉当前工作目录中的.py文件
def list_py(path = None):
if path == None:
path = os.getcwd()
return [fname for fname in os.listdir(path)
if os.path.isfile(fname)
if fname.endswith('.py')]
【报错】
File "8.4.1_list.py", line 16
if os.path.isfile(fname)
^
IndentationError: unexpected indent
新藤·千寻
9 years, 3 months ago
Answers
[fname for fname in os.listdir(path)
if os.path.isfile(fname)
if fname.endswith('.py')]
这是个python的列表解析。这是一条完整的语句,如果要换行的话,就要在行末加上"\"提示回车符并不是换行。很多语言都有这种写法。
如:
[fname for fname in os.listdir(path) \
if os.path.isfile(fname) \
if fname.endswith('.py')]
但是语句不长的话,建议这样写可读性好些。
[fname for fname in os.listdir(path) if (os.path.isfile(fname) and fname.endswith('.py'))]
万能的全控君
answered 9 years, 3 months ago