2013-10-04 9 views
8

gdy użycie Cython stworzyć helloworld.c z helloworld.pyx ten błąd:Cython błąd kompilacji z funkcją drukowania Parametry

error compiling Cython file: 
------------------------------------------------------------ 
... 
print('hello world',end='') 
        ^
------------------------------------------------------------ 

p21.pyx:1:23: Expected ')', found '=' 

moje polecenie, aby utworzyć helloworld.c jest:

cython3 --embed p21.pyx 

Odpowiedz

5

Wygląda na to, że cython traktuje wszystkie wydruki jako instrukcje Pythona 2 domyślnie. W celu korzystania z funkcji python 3 Print należy zaimportować go z modułu przyszłość:

from __future__ import print_function 

print('hello world',end='') 
3

Nie wiem, czy to jest nadal aktualne, ale w moim przypadku, z Cython 0,23, skompilować Kod Python3 musisz podać flagę -3. Na przykład

cython -3 mycode.py