首页 > 解决方案 > 无法连接“str”和“list”对象(基本列表索引)

问题描述

我有一个程序询问用户他们有多少个名字,然后根据落入的类别(第一个、中间和最后一个)打印它们。

names = int(input("Number of names: "))
name_list = []

for i in range(names):
    name_list.append(input("Name: "))

print "First name: " + name_list[0]
print "Middle names: " + name_list[0:len(name_list) - 1]
print "Last name: " + name_list[-1]

但是我得到一个 TypeError: cannot concatenate strand listobjects on line 9 我不太确定为什么。我寻找错误,但我只发现了更复杂的程序,我并没有真正得到解释

标签: pythonpython-2.x

解决方案


嗯,这是因为你不能连接strlist对象。

name_list=["First_name", "Middle_name1", "Middle_name2", "last_name"]

print "First name: " + name_list[0] # First name: First_name
print "Middle names: " + ' '.join(name_list[1:-1]) # Middle names: Middle_name1 Middle_name2
print "Last name: " + name_list[-1] # Last name: last_name

推荐阅读