2017-09-25 41 views
-2

分配给其他数组相同的索引值我有两个列表命名A和B:如何数组的索引值在python

A = ["boy","girl","place","food"] 
B = ["he","she","USA,UK","Pizza,Burger,Sushi"] 

我希望接受的“他”,当用户的输出。总之我要在名单A类元素的索引值输入“男孩”被赋予列表B.同一指数的值

A[0] == B[0] 
A[1] == B[1] 
A[2] == B[2] 
A[3] == B[3] 

这是千真万确的事情我want.If我输入在A [i]中给出的数据,输出应该是在B [i]中给出的。谢谢。

+0

是否要将B中的元素输出到屏幕上,或者是否想用B中的元素(相同的索引号)从A覆盖该元素? –

+0

你搜索了什么吗? '的.index()'? – trincot

+0

你可能只想要一个'dict'。 –

回答

2

可以使用.index(input_string)获取用户输入的索引,然后调用B:

A = ["boy","girl","place","food"] 
B = ["he","she","USA,UK","Pizza,Burger,Sushi"] 

i = A.index('boy') 
print B[i] # he 

我认为你需要考虑字典结合了这些名单的。

my_dict = dict(zip(A, B)) 

user_input = raw_in-put('enter a word\n') 
if user_input in my_dict: 
    print my_dict[user_input] 
0

我可以用一个额外的字典,你可以将A的值作为B值的关键字。

看看下面的例子更多的参考

A = ["boy","girl","place","food"] 
B = ["he","she","USA,UK","Pizza,Burger,Sushi"] 

dic = zip(A, B) 

print(dic["boy"]) 

希望这有助于!

+0

不要使用while循环,只是'mydict = dict(zip(B,A))',另外,不要使用变量名称来映射内置的'dict'类型。 –

0

首先,您必须检查您的输入是否确实在A.然后,如果是,则使用index方法找到A中项目的索引,以便用它访问B.

A = ["boy","girl","place","food"] 
B = ["he","she","USA,UK","Pizza,Burger,Sushi"] 
input_string = 'place' 

if input_string in A: 
    output_string = B[A.index(input_string)] 
    print(output_string) # outputs 'USA,UK' 
0

理想情况下,你组织你的数据列表的列表,因为它是现在,它是非常困难的格式化的字典没有提前知道需要哪些组时间:

A = ["boy","girl","place","food"] 
B = ["he","she",["USA,UK"],["Pizza,Burger,Sushi"]] 
new_data = {a:b for a, b in zip(A, B)} 
print(new_data["boy"]) 

输出:

"he" 
0

你绝对想要一个字典。

a_to_b = dict(zip(a,b)) 
print a_to_b['he'] == 'boy' 

for key in a: 
    print key, a_to_b[key]