返回由.split()元素组成的python中的列表

Won*_*ser 1 python list

在下面的代码中,getreport是一个由/t和格式化的文本项/n.我正在尝试输出一个电话号码列表,但返回的列表会像这样返回:['5','5','5','7','8','7', ...]等等,而不是类似['5557877777']的内容.这有什么不对?

def parsereport(getreport):
listoutput = []
lines = re.findall(r'.+?\n' , getreport) #everything is in perfect lines
for m in lines:
    line = m
    linesplit = line.split('\t')  # Now I have a list of elements for each line
    phone = linesplit[0]  # first element is always the phone number ex '5557777878'
    if is_number(linesplit[10]) == True:
            num = int(linesplit[10])
            if num > 0:
                listoutput.extend(phone) 
Run Code Online (Sandbox Code Playgroud)

我尝试将print(手机)进行测试,它看起来很棒,并返回'5557877777'等行,但返回列表= ['5','5'等]并且数字被拆开.

return listoutput
Run Code Online (Sandbox Code Playgroud)

dmi*_*tri 6

您将使用listoutput.append()函数而不是listoutput.extend()

>>> p='12345'
>>> l=[]
>>> l.extend(p)
>>> l
['1', '2', '3', '4', '5']
>>> ll = []
>>> ll.append(p)
>>> ll
['12345']
Run Code Online (Sandbox Code Playgroud)

扩展功能: 通过附加给定列表中的所有项来扩展列表