题目:'''names=['Tom','Billy','Jefferson','Andrew','Wesley','Steven','Joe','Alice','Jill','Ana','Wendy','Iennifer','Sherry','Eva']找出上述名字中长度大于4的名字,组成列表打印...
题目:
'''
names=['Tom','Billy','Jefferson','Andrew','Wesley','Steven', 'Joe','Alice','Jill','Ana','Wendy','Iennifer','Sherry','Eva']
找出上述名字中长度大于4的名字,组成列表打印出来.
过滤掉长度大于5的字符串列表,并将剩下的转换成大写字母.
'''
#用for循环做出来的答案输出结果不正确
names=['Tom','Billy','Jefferson','Andrew','Wesley','Steven',
'Joe','Alice','Jill','Ana','Wendy','Jennifer','Sherry','Eva']
a=[]
b=[]
for i in names:
if len(i)>4:
a.append(i)
else:
i.upper()
b.append(i)#有问题 为什么没有大写
print(a)
print(b)
''
for 循环做出来的结果 b列表没有大写
['Billy', 'Jefferson', 'Andrew', 'Wesley', 'Steven', 'Alice', 'Wendy', 'Jennifer', 'Sherry']
['Tom', 'Joe', 'Jill', 'Ana', 'Eva']
...
列表推导式做出来的结果是正确的
...
names=['Tom','Billy','Jefferson','Andrew','Wesley','Steven',
'Joe','Alice','Jill','Ana','Wendy','Jennifer','Sherry','Eva']
a=[i for i in names if len(i)>4]#生成一个列表
print(a)
b=[i.upper() for i in names if len(i)<=4]
print(b)
'''
正确的输出结果
['Billy', 'Jefferson', 'Andrew', 'Wesley', 'Steven', 'Alice', 'Wendy', 'Jennifer', 'Sherry']
['TOM', 'JOE', 'JILL', 'ANA', 'EVA']
'''
展开