麻烦加入列表一起

时间:2017-03-22 03:06:10

标签: python list python-3.x

我无法正确加入两个列表。

def option_6():
  global main_arr                                                       
  print('List intially:', main_arr)                                 
  arr_str = input('Enter new list\n')           
  new_arr = arr_str                                     
  main_arr = join(main_arr, new_arr)                                    
  print('Lists joined')                                             
  print('List after joining new list:', main_arr)   

这是我的功能

def join(arr1, arr2):
  new_arr = arr1                                                    
  for item in arr2:                                                 
    new_arr.append(item)                                            
  return new_arr

添加新元素并创建新列表后的最终结果是创建的联接列表将输入的元素读为['1stList', '2', 'n', 'd', 'L', 'i', 's', 't']

而不是

['1stList`, '2ndList']

3 个答案:

答案 0 :(得分:0)

问题是input('Enter new list\n')返回字符串而不是列表。

顺便说一句,您可以使用list1 + list2加入两个列表

答案 1 :(得分:0)

您正在遍历字符串的字符。基本上new_arr是一个字符串而不是一个数组。

<强>解决方案:

要求用户输入逗号分隔值。然后你可以做new_arr = arr_str.split(',')

答案 2 :(得分:0)

代码

  

arr_str =输入(&#39;输入新列表\ n&#39;)

阅读&#39; 2ndList&#39;作为字符串而不是列表[&#39; 2ndList&#39;]。然后当你迭代字符串时,你会得到它为什么会出现这种形式。