在python2.7中格式化列表中的数据并将其附加到另一个lis时出现问题

2024-10-02 12:23:19 发布

您现在位置:Python中文网/ 问答频道 /正文

users = ["<USER John Bells (100000469012345)>","<USER Shaym kismet (1027112345)>"]
unsorted_list = []
username_list = []
users_id_list = []

def data_handeling01():
    for friends_list in users:
        unsorted_list.append(friends_list)

    print unsorted_list
    for data in unsorted_list:
        string01 = data[6::]
        splitted_info = string01.split(" (")
        username_list.append(str(splitted_info[0]))
        users_id_list.append(splitted_info[-1].split(")")[0])

        print username_list
        print users_id_list
data_handeling01()

**

Traceback (most recent call last):
  File "get-formatted-data-lists.py", line 19, in <module>
    data_handeling01()
  File "get-formatted-data-lists.py", line 12, in data_handeling01
    string01 = data.data[6::]
AttributeError: 'User' object has no attribute 'data'

**

我要查找的结果是用户名进入username\u list=[“John Bells”]和用户名进入users\u id\u list=[“100000469012345”]


Tags: ininfoiddatausernamejohnuserslist
2条回答

对我来说,你的代码工作得更简单了一点:

users = ["<USER John Bells (100000469012345)>","<USER Shaym kismet (1027112345)>"]
unsorted_list = []
username_list = []
users_id_list = []

def data_handeling01():
    for data in users:
        string01 = data[6::]
        splitted_info = string01.split(" (")
        username_list.append(str(splitted_info[0]))
        users_id_list.append(splitted_info[-1].split(")")[0])

    print username_list
    print users_id_list
data_handeling01()

结果如下:

['John Bells', 'Shaym kismet'] 
['100000469012345', '1027112345']

使用正则表达式:

import re
users = ["<USER John Bells (100000469012345)>","<USER Shaym kismet (1027112345)>"]
username_list = []
users_id_list = []

for i in users:
    m = re.search("\<USER\s+(.*?)\((.*?)\)", i)
    if m:
        username_list.append(m.group(1))
        users_id_list.append(m.group(2))
print(username_list)
print(users_id_list)

输出:

['John Bells ', 'Shaym kismet ']
['100000469012345', '1027112345']

相关问题 更多 >

    热门问题