-1

我有一个 sql 文件,它有两个名为 'email' 和 'pass' 的列字段。样品部分如下

'vloz54yC7q9p85i2Uwdi', 'zurunet', 'zurunet@hotmail.com', '', '', '', '', '',     'http://www.bnadm.com', '1a36c4e04a065e1840132b64a1b0a2a8', 9, '1186148119', '', '', '', '', '', '', '', '', 0, '', '', 0);
INSERT INTO `nuked_users` VALUES ('avtGdl4zt9woGjXevy3j', '1aflam',    'zaiker_8@hotmail.com', 'zaiker_8@hotmail.com', '', '', '', '', '',    '13530b1a10329459789c8972909dddb4', 1, '1186451181', '', '', '', '', '', '', '', '', 0, '', '', 0);

我想做的是只提取用户的电子邮件和密码。

为此,我怎么能在最后用@hotmail.com提取所有字符串。如果 txt 文件的名称是 foo.txt,

fo = open("foo.txt" , 'r')
listme = fo.readlines()

listme 将是该文件中的字符列表,我只需要过滤掉最后带有@hotmail.com 的那些字符串。

4

1 回答 1

3

你可以做这样的事情

with open("foo.txt" , 'r') as foo:
    listme = foo.read()

string =  listme.strip().split(',')
new_string = ''


for words in string:
    if words not in new_string:
        if '@hotmail.com' in words:
            new_string+=words


print new_string

这将打开文件(使用 with 语句),然后读取它,然后在每个逗号处拆分大字符串,然后使用 for 循环遍历每个字符串,最后一个条件将检查它是否已被使用如果不是另一个条件,就会找出其中的字符串@hotmail.com

这个的输出是:

'zurunet@hotmail.com' 'zaiker_8@hotmail.com'
于 2013-07-01T11:38:31.533 回答