Seite 1 von 1

Brauche Hilfe beim übersetzen ;)

Verfasst: Samstag 6. Dezember 2003, 00:05
von Keanuf
Also mein englisch ist echt beschissen.

Ich bastel hier gerade ein FTP Tool

Dazu verwende ich das ftputil Modul von Stefan Schwarzer.
Der hat in der Doku folgendes geschrieben:
class _Path
| Support class resembling os.path, accessible from the
| FTPHost() object e. g. as FTPHost().path.abspath(path).
| Hint: substitute os with the FTPHost() object.
|
| Methods defined here:
|
| __init__(self, host)
|
| abspath(self, path)
| Return an absolute path.
|
| exists(self, path)
|
| getmtime(self, path)
|
| getsize(self, path)
|
| isdir(self, path)
|
| isfile(self, path)
| # check whether a path is a regular file/dir/link;
| # for the first two cases follow links (like in os.path)
|
| islink(self, path)
|
| split(self, path)
|
| walk(self, top, func, arg)
| Directory tree walk with callback function.
|
| For each directory in the directory tree rooted at top
| (including top itself, but excluding '.' and '..'), call
| func(arg, dirname, fnames). dirname is the name of the
| directory, and fnames a list of the names of the files and
| subdirectories in dirname (excluding '.' and '..'). func may
| modify the fnames list in-place (e.g. via del or slice
| assignment), and walk will only recurse into the
| subdirectories whose names remain in fnames; this can be used
| to implement a filter, or to impose a specific order of
| visiting. No semantics are defined for, or required of, arg,
| beyond that arg is always passed to func. It can be used,
| e.g., to pass a filename pattern, or a mutable object designed
| to accumulate statistics. Passing None for arg is common.
Ich möchte nun diese walk funktion benutzen, weiss aber nicht was für 4 argumente er den haben will ????

Das erste ist klar (self) aber ab dem 2. Verlassen mich meine Kentnisse, und diese sind noch nicht sehr weit fortgeschritten ;)

Naja villeicht kann mir da jemand helfen.

Ich danke im vorraus.

Verfasst: Samstag 6. Dezember 2003, 21:54
von Beyond
Ist drunter beschrieben:-)
(kurz überflogen)
top: das Einstiegs-Verzeichnis ...
func: die aufzurufende Funktion
args: zusätzliche Argumente

OHNE ENGLISCH WIRD DAS NICHTS!
kleiner Tip: www.leo.org

cu beyond

Verfasst: Sonntag 7. Dezember 2003, 01:27
von Keanuf
Danke für die Antwort.
Das es unten beschrieben ist, weis ich auch.
Und sowie du es beschrieben hast, habe ich es auch verstanden.


Nur wenn ich die funktion verwende.

Mit

Code: Alles auswählen

FTPHost().path.walk('/',lesen(x),??????)
funktioniert es nicht da ich nicht weis welche zusätzlichen argumente ich noch übergeben soll ;)).
Also '/' steht für die Root
funktion lesen (x) nimmt die übergebene variable und gibt sie mit print aus, aber was für argumente soll ich den geben ????

Man muss aber alle anführen ;)

Achja danke für den Link mit den Wörterbüchern ;)

Verfasst: Sonntag 7. Dezember 2003, 12:21
von Beyond
Passing None for arg is common

Das ist wohl das Richtige für Dich.
Mache eine func

Code: Alles auswählen

def funkt(arg, dirname, fnames):
    # arg kannste ignorieren (ist None)
    ...
Und dann:

Code: Alles auswählen

FTPHost().path.walk('/',funkt(x),None)

Verfasst: Sonntag 7. Dezember 2003, 12:21
von Milan
| func(arg, dirname, fnames). dirname is the name of the
| directory, and fnames a list of the names of the files and
| subdirectories in dirname (excluding '.' and '..'). func may
| modify the fnames list in-place (e.g. via del or slice
| assignment)
Das ganze ist einach nur eine Implementation von os.path.walk für FTP-Clients. Und da bekommt die Funktion, die übergeben wird jeweils 3 Argumente: arg ist das, was du beim rufen von walk als arg mit übergibts. dirname ist das aktuelle Verz uaf dem Server und fnames sind die m Verz. enthaltenen Dateien und Verzeichnisnamen (bis auf '.' und '..').

Tja, da hilft nur fleißig Englisch üben :wink:

Verfasst: Sonntag 7. Dezember 2003, 12:23
von Milan
Beyond hat geschrieben:

Code: Alles auswählen

FTPHost().path.walk('/',funkt(x),None)
Musst du nicht statt funkt(x) nur funkt übergeben? Sonst isses doch keine Funktion mehr, sondern nur ein einzelner Wert...

Verfasst: Sonntag 7. Dezember 2003, 17:27
von Keanuf
Danke ich wusste ich finde hier hilfe.

Nun habe ich das verstanden.
Und werde es dann mal probieren.
Danke nochmals.

Bis zur nächsten Frage
:wink: