2014-01-14 71 views
2

我们如何从函数返回一个稀疏矩阵和一个数组数据。我的稀疏矩阵是从python函数返回不同的数据类型

sparse_mat

< 540x5550类型 '' 的稀疏矩阵与坐标9068个存储的元素格式>

,另一个数据是SESSION_ID

array([['192.168.113.111_timesofindia.indiatimes.com_1', 'User'], 
    ['192.168.113.111_timesofindia.indiatimes.com_2', 'User'], 
     dtype='|S46') 

我想从一个函数返回这两个数据。谢谢

回答

3

您可以通过返回一个元组从Python函数返回多个值:

return sparse_mat, session_id 

调用者可以通过类似得到返回值:

m, id = your_function() 

哦,没有关系如果存在两种不同的数据类型,则不会有任何区别。当然你也可以返回两个相同类型的值。

3

使用一个元组:

def foo(x, y): 
    sum = x + y 
    return (x, y, sum) 

看到了吗?我回来了3件物品。而更重要的是,如果我知道元组的airity,那么我可以使用提取捕捉它们:

(m, n, total) = foo(4, 5) 

其中m分配4n分配5total分配9

+0

支架在'return'不是强制性:) – thefourtheye

2

实例

def return2(): 
    a = {1:1} 
    b = 'b' 
    return a,b 

def anotherReturn2(): 
    a = {1:1} 
    b = 'b' 
    return {'a' : a, 'b' : b} 

a_1, b_1 = return2() 
a_2 = return2()[0] 
b_2 = return2()[1] 
print a_1, b_1, a_2, b_2 

a_1, b_1 = anotherReturn2() 
a_2 = anotherReturn2()['a'] 
b_2 = anotherReturn2()['b'] 
print a_1, b_1, a_2, b_2 

>>> 
{1: 1} b {1: 1} b 
a b {1: 1} b 
>>> 
相关问题