Python列出目录没有错误

时间:2014-02-27 01:44:14

标签: python list operating-system dir

我最近开始为朋友制作程序,当我尝试使用用户输入创建目录列表时,我无法弄清楚如何处理错误。 目录示例

  • 用户
  • Prefrences
  • 备忘录

如果用户输入“home”,我该怎么做才能显示“无效目录”这样的错误?

这是我的一小部分代码:

ch1 = input('Path To List: ')
path = ch1
dirList = os.listdir(path)
for fname in dirList:
    print('-', fname)
cmd()

我可以包含哪些代码来修复该错误吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

正如评论中所建议的那样,try / except块足以满足您的需求:

import os
import sys
# Get input as a string
input = raw_input('Path To List: ')
# Get absolute path in case user gives a relative path
path = os.path.abspath(input)
try:
    dirList = os.listdir(path)
except OSError:
    print("Invalid directory")
    sys.exit()
for fname in dirList:
    print(fname)