2012-04-01 16 views
3

FTPディレクトリのエントリのリストをどのくらい正確に作成しますか?Pythonのretrlinesからリストを作成する

これは、これまでの私のコードです:

import ftplib 

files = [] 

my_ftp = ftplib.FTP(HOST) 
my_ftp.login(USERNAME,PASSWORD) 

line = my_ftp.retrlines("NLST",files.append(line)) 
my_ftp.quit() 

エラーは、それが定義される前に、変数の行が使用されていることを述べています。コールバック引数に

+1

ここに掲載の答えの一つは、あなたの問題を解決した場合に、マークしてくださいそれは受け入れられる。 – zigg

答えて

3

ほとんど変化し、次はあなたがおそらくnlstを使用したい

line = my_ftp.retrlines("NLST",files.append) 
+0

'retrlines'は' callback'を指定しないと 'print_line'を呼び出します。それは動作しません。 – zigg

+0

はい、そうです。私は今それを編集します。 – 0sh

+0

ああ、 'files.append'は' lambda'よりも優れています。なぜ私はそれを考えなかったのですか? :-) – zigg

7

動作するはずです:

>>> my_ftp.nlst() 
['pub', 'etc', 'ports'] 
関連する問題