Cython将python数组转换为vector [char]

问题描述 投票:0回答:1

在python中,我在calculate文件中调用了pyx函数,然后调用了其他cdef函数。

python函数:

def getCoord():
   array = ['A','B','C','D']
   px = 5
   py = 6
   move = pyxFile.calculateCoord( array, x, y )

pyx函数:

def calculateCoord( array, px, py):
   cdef vector[ char ] b

   for i in range( len( array) ):
      b.push_back( array[ i ] )

   return search( b, px, py )

[我试图将python字符数组传递给vector[char]以在我的cdef函数中使用,但是我的错误是an integer is required行上的b.push_back( array[ i ] )

[xy是整数

[search(一个cdef函数)返回一个整数元组

python-3.x cython
1个回答
1
投票

您的输入是长度为1的字符串,而不是char。我知道这似乎应该是相同的,但事实并非如此。

您可以使用ord获得长度为1的字符串的整数值:

ord
© www.soinside.com 2019 - 2024. All rights reserved.