Параллельный Python не может правильно принимать аргументы - PullRequest
1 голос
/ 03 июля 2019

Я только начал использовать Parallel Python (pp) в Python3, и в настоящее время у меня возникают проблемы с передачей аргументов объектной функции.

Возможно ли, что аргумент не может быть списком? Я не смог найти ни одного человека с таким же сообщением об ошибке, как я, поэтому я в замешательстве.

import pp, numpy

class myobj:
    def __init__(self):
        """some code"""

    def myfunc(self, data, n):
        return [data[numpy.random.randint(0, N)] for i in range(N)]

if __name__ == "__main__":
    ppservers = ()

    job_server = pp.Server(ppservers = ppservers)

    proc = myobj()

    data = [[1, 2, 3], [4, 5, 6]]
    N = 2

    results = []
    for i in range(10):
        f = job_server.submit(proc.myfunc, (data, N), modules=('numpy',))
        results.append(f)

    for f in results:
        val = f()
        print(val)
A fatal error has occured during the function execution
Traceback (most recent call last):
  File "/anaconda3/envs/mvi/lib/python3.6/site-packages/ppft/__main__.py", line 94, in run
    __fname, __fobjs = self.t.creceive(preprocess)
  File "/anaconda3/envs/mvi/lib/python3.6/site-packages/ppft/transport.py", line 128, in creceive
    self.rcache[hash1] = tuple(map(preprocess, (msg, )))[0]
  File "/anaconda3/envs/mvi/lib/python3.6/site-packages/ppft/__main__.py", line 60, in preprocess
    fobjs = [compile(fsource, '<string>', 'exec') for fsource in fsources]
  File "/anaconda3/envs/mvi/lib/python3.6/site-packages/ppft/__main__.py", line 60, in <listcomp>
    fobjs = [compile(fsource, '<string>', 'exec') for fsource in fsources]
  File "<string>", line 1
    gging(self, dataset, N):
                           ^
SyntaxError: invalid syntax
 None
...