如何返回列表中每个项目的第二个字母字符[如果有第二个字母字符]?如果没有第二个字母字符什么都不做。
list = [“a b”,“c d”,“e”]
for item in list:
x = item.split()[1]
最后一个循环返回“IndexError:list index out of range”,因为没有第二个项目。
答案 0 :(得分:1)
发生错误是因为项"e"
被分成一个块(用0
索引)另外,不要给变量保留名称为list
对于您的简单案例,您可以使用以下内容:
l = ["a b", "c d", "e"]
result = [i.split()[1] if ' ' in i else i for i in l]
print(result)
输出:
['b', 'd', 'e']
答案 1 :(得分:0)
即使它的长度为1(也就是说,它不能分割),它也会获取该项目
formatStyle(names(datCalc), fontSize = '12px')
如果项目不可分割,则忽略该项目:
x = [] #creates a list to hold the values
for item in list:
if(len(item)) == 1:
x.append(item)
else:
x.append(item.split()[1])
print(x)