2

内での使用に適したルーチンF2Pyをコンパイルするために使用すると、次のコードは、使用中にコンパイラとして構成されたgfortranを正常にコンパイルできますが、呼び出し時に実行時エラーが発生します。 コメントや解決策はありますか?FortranPythonF2PyPython

function select(x) result(y)
   implicit none
   integer,intent(in):: x(:) 
   integer:: i,j,temp(size(x))
   integer,allocatable:: y(:)
   j = 0
   do i=1,size(x)
      if (x(i)/=0) then
         j = j+1
         temp(j) = x(i)
      endif
   enddo
   allocate(y(j))
   y = temp(:j)
end function select

同様のStackOverflowの投稿はここにあります。

4

2 に答える 2

0

この記事http://www.shocksolution.com/2009/09/f2py-binding-fortran-python/、特に例と意味を見てください

!f2py depend(len_a) a, bar

ただし、著者は異なるサイズの配列を生成する問題には触れていません。

于 2011-12-15T09:42:32.883 に答える