从python中的列表中获取值

时间:2017-03-09 16:55:42

标签: python

我有一个类似以下类型的输入,

[[ 34535.54  23514.54  43213.73 ]
[ 249.01976173  132.7836   26.05499407]
[  87.26696285  107.90388887  148.68014509]]

我需要分别从第一行,第二行和第三行获取值 喜欢

a1=34535.54,  a2=23514.54, a3= 43213.73 
b1=249.01976173  ,b2=132.7836   ,b3=26.05499407
c1=87.26696285  ,c2=107.90388887  ,c3=148.68014509

我应该如何在python中显示值?

3 个答案:

答案 0 :(得分:1)

你可以在python中分解列表:

a, b, c = [1, 2, 3]

这也可以扩展到嵌套列表。

答案 1 :(得分:1)

在python列表中使用逗号表示,因此您的输入应包含逗号:

mylist = [[34535.54, 23514.54, 43213.73],
    [249.01976173, 132.7836, 26.05499407],
    [87.26696285, 107.90388887, 148.68014509]]

然后访问列表中使用括号

的值
a1= mylis[0][0]
a2= mylis[0][1] 
a3= mylis[0][2] 

b1= mylis[1][0]  
b2= mylis[1][1]   
b3= mylis[1][2]

c1= mylis[2][0]  
c2= mylis[2][1]  
c3= mylis[2][2]
比尔提到了一种更为诡辩的做法:

[a1,a2,a3],[b1,b2,b3],[c1,c2,c3] = mylist

答案 2 :(得分:0)

好的,所以这个问题存在一些错误:

  1. 已多次说过,StackOverflow不是为其他人编写代码而是为了帮助您改进自己的代码。您没有向我们展示您自己尝试解决问题的方法。

  2. 您显示的输入似乎包含1个列表中的3个列表,但语法错误,因为有些人已在您的问题的评论中注意到。

  3. 您的问题不明确。你想要' a1'等是新的,单独的变量还是只是简单的字符串?

  4. 但是,无论如何我都会写一个快速回复来帮忙。

    如果您想要字符串,请尝试以下方法:

    import string
    
    alphabet = list(string.ascii_lowercase)
    yourvariable = [[34535.54,  23514.54,  43213.73],[249.01976173,  132.7836,   26.05499407],[  87.26696285,  107.90388887,  148.68014509]]
    
    string_result_list = []
    for i in range(len(yourvariable)):
        for x in range(len(yourvariable[i])):
            y = i + 1
            string_result = str(alphabet[i]) + str(y) + '=' + str(yourvariable[i][x])
            string_result_list.append(string_result)
    
    print(string_result_list[0])
    

    如果你真的想要所有不同的变量,请认真思考,如果你不想要一个列表或字典,如果没有:写好必要代码的好运。