# 查找列表中元素,移除每个元素的空格,并查找以 a或A开头 并且以 c 结尾的所有元素。
# li = ["alec", " aric", "Alex", "Tony", "rain"]
print('first'.center(40,'-'))
import re
def fun(li):
mylist = []
for i in li:
result = i.strip()#另一种去空格方法:result = i.replace(' ','')
choose = ''.join(re.findall('^[aA].*c$',result))#![aA]之间不要加逗号
if choose != '':
mylist.append(choose)
return mylist
list1 = ['alec',' aric','Alex','Tony','rain']
print(fun(list1))
print('second'.center(40,'-'))
for i in li:
m = i.replace(' ','')
pattern = re.compile('^[aA].*c$')#![aA]之间不要加逗号
result = pattern.findall(m)
if len(result) > 0:
print(result)
'''1。如果把print(re.findall('^[aA].*c$',result))
改为return re.findall('^[aA].*c$',result),
在调用时为什么只返回['alec']
-----因为return有结束函数的作用,所以对策是将所需结果追加到一个列表中,然后返回列表
2.findall返回的是列表
'''