keks
nicht 1337 genug
[PYTHON] string.split() splittet zu einzelnen Buchstaben anstatt zu Wörtern
Hallo Forum,
ich weis ehrlich gesagt nicht mehr weiter.
Ich möchte folgendes tun (in der python Shell klappt das wunderbar)
so wie ich es erwarten würde. Wenn ich ext.split() im orginal script aufrufe, dann splittet er Zeichenweise. Hier mal relevante Auszüge aus meinem Orginalscript:
searchMass:
search:
Wenn ich nun an searchMass(self, "search a") übergebe, dann wird es folgedermaßen aufgesplittet:
: search a
search a
"
s
e
a
r
c
h
a
"
was im wiederspruch zur funktionalität der split funktion in der shell steht?! Hilfe seh ich den Wald vor lauter Bäumen nicht?
Grüße
Keks
PS: es gibt bestimmt schickere Möglichkeiten auf locate zu prüfen (bin für vorschläge offen ). Ich mache etwas ala "rapid prototyping".
Hallo Forum,
ich weis ehrlich gesagt nicht mehr weiter.
Ich möchte folgendes tun (in der python Shell klappt das wunderbar)
Code:
>>> ext="search foo bar baz"
>>> ext.split()
['search', 'foo', 'bar', 'baz']
dann alles ab dem ersten element ausgeben (bzw im orginal script funktionen aufrufen)
>>> for each in ext.split()[1:]:
... print each
foo
bar
baz
Code:
command = str(raw_input(": "))
if "search" in command:
fc.searchMass(command)
searchMass:
Code:
def searchMass(self, ext):
rtn=""
#print ext
ext.split(" ")
#for each in ext:
# print each
if len(ext) > 1:
for line in ext[1:]: # alles nur nicht das erste element
rtn+=self.search(line)
print rtn
search:
Code:
def search(self,ext):
if os.name=="posix":
# Checkt auf locate
if not os.system("locate") == 32512: # not found
dFilelist = os.popen("locate "+ext) # luxurious lets use locate's db
elif not os.system("find -pippikaka") == 256: # wrong option
# have to search with find
dFilelist = os.popen('find /tmp -name '+ext+' 2> /dev/null')
endline=""
for line in dFilelist:
endline+=str(line)
return endline
Wenn ich nun an searchMass(self, "search a") übergebe, dann wird es folgedermaßen aufgesplittet:
: search a
search a
"
s
e
a
r
c
h
a
"
was im wiederspruch zur funktionalität der split funktion in der shell steht?! Hilfe seh ich den Wald vor lauter Bäumen nicht?
Grüße
Keks
PS: es gibt bestimmt schickere Möglichkeiten auf locate zu prüfen (bin für vorschläge offen ). Ich mache etwas ala "rapid prototyping".
Zuletzt bearbeitet: