📜  Python中的 numpy.asfortranarray()

📅  最后修改于: 2022-05-13 01:55:05.840000             🧑  作者: Mango

Python中的 numpy.asfortranarray()

当我们要将输入转换为在内存中以 Fortran 顺序排列的数组时,使用numpy.asfortranarray()函数。输入包括标量、列表、元组列表、元组、元组元组、列表元组和 ndarray。

代码 #1:列表到 fortranarray

# Python program explaining
# numpy.asfortranarray() function
  
import numpy as geek
my_list = [1, 3, 5, 7, 9]
  
print ("Input  list : ", my_list)
   
    
out_arr = geek.asfortranarray(my_list)
print ("output fortanarray from input list : ", out_arr) 

输出 :

Input  list :  [1, 3, 5, 7, 9]
output fortanarray from input list :  [1 3 5 7 9]


代码 #2:元组到 fortanarray

# Python program explaining
# numpy.asfortranarray() function
  
import numpy as geek
  
my_tuple = ([1, 3, 9], [8, 2, 6])
   
print ("Input  tuple : ", my_tuple)
    
out_arr = geek.asfortranarray(my_tuple, dtype ='int8') 
print ("output fortan array from input tuple : ", out_arr) 

输出 :

Input  tuple :  ([1, 3, 9], [8, 2, 6])
output fortan array from input touple :  [[1 3 9]
 [8 2 6]]


代码#3:标量到fortanarray

# Python program explaining
# numpy.asfortranarray() function
  
import numpy as geek
  
my_scalar = 15
   
print ("Input  scalar : ", my_scalar)
    
out_arr = geek.asfortranarray(my_scalar, dtype ='float') 
print ("output fortan array from input scalar : ", out_arr) 

输出 :

Input  scalar :  15
output fortan array from input scalar :  [ 15.]


代码#4:数组到fortanarray

# Python program explaining
# numpy.asfortranarray() function
  
import numpy as geek
  
in_arr = geek.arange(9).reshape(3, 3)
   
print ("Input  array : ", in_arr)
  
# checking if it is fortanarray
print(in_arr.flags['F_CONTIGUOUS'])
  
out_arr = geek.asfortranarray(in_arr, dtype ='float') 
print ("output array from input array : ", out_arr) 
  
# checking if it has become fortanarray
print(out_arr.flags['F_CONTIGUOUS'])

输出 :

Input  array :  [[0 1 2]
 [3 4 5]
 [6 7 8]]
False
output array from input array :  [[ 0.  1.  2.]
 [ 3.  4.  5.]
 [ 6.  7.  8.]]
True