Ich versuche, ein String-Argument an eine Zielfunktion in einem Prozess übergeben. Irgendwie wird die Zeichenfolge als eine Liste von so vielen Argumenten interpretiert, wie es Zeichen gibt.String Argumente in Python Multiprocessing
Dies ist der Code:
import multiprocessing
def write(s):
print s
write('hello')
p = multiprocessing.Process(target=write, args=('hello'))
p.start()
ich diese Ausgabe erhalten:
hello
Process Process-1:
Traceback (most recent call last):
>>> File "/usr/local/lib/python2.5/site-packages/multiprocessing/process.py", line 237, in _bootstrap
self.run()
File "/usr/local/lib/python2.5/site-packages/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
TypeError: write() takes exactly 1 argument (5 given)
>>>
Was mache ich falsch? Wie soll ich einen Stringn weitergeben?
Danke, Ariel