ここで私が見つけたスクリプトの一部を使って、Windows PC上のディレクトリを実行してXMLファイルを生成します。しかし、私は上記のエラーに遭遇していると私はどのようにエラーを処理するか分からない。私はtry/exceptを追加しましたが、それでもなおクラッシュします。 「DirTree3((os.getcwd())」xmlへのディレクトリリスト - 'str'と 'NoneType'オブジェクトを連結できません - どのように処理するのですか?
def DirTree3(path):
try:
result = '<dir>%s\n' % xml_quoteattr(os.path.basename(path))
for item in os.listdir(path):
itempath = os.path.join(path, item)
if os.path.isdir(itempath):
result += '\n'.join(' ' + line for line in
DirTree3(os.path.join(path, item)).split('\n'))
elif os.path.isfile(itempath):
result += ' <file> %s </file>\n' % xml_quoteattr(item)
result += '</dir> \n'
return result
except Exception:
pass
print '<DirectoryListing>\n' + DirTree3("C:/") + '\n</DirectoryListing>'
としてサイドノートで:私は「DirTree3(」/ C「)を」置き換えることによって、私の現在の作業ディレクトリであることをディレクトリを設定する場合、これは完璧に動作しますこのスクリプトは管理者権限のないシステム上で実行されるため、adminとしての実行はオプションではありません
どのコード行がエラーに苦情を言いますか? – galaxyan
try/exceptionは助けになりません。あなたの関数は例外を返すとNoneTypeを返します。 – galaxyan
最後の行に文句を言います。 DirTree3関数を呼び出すものです。 "DirTree3(" C:/ ")"を "DirTree3((os.getcwd())"に置き換えることによって、現在の作業ディレクトリになるようにディレクトリを設定すると、これは完璧に機能します –