读一部分字符串

时间:2017-02-06 18:41:08

标签: python

我在这里有一个更大的计划的一部分。此功能正在查看一些输入电子邮件,并按字母顺序排序。有没有办法让我只看看@domain之前的部分?目前我认为它正在查看整个输入电子邮件字符串。

def __lt__(self, other):
    if (self.email < other.email):
        return True
    else:
        return False

1 个答案:

答案 0 :(得分:3)

是:

def __lt__(self, other):
    return self.email[:self.email.index('@')] < other.email[:other.email.index('@')]

鉴于'@'中始终存在email

我们在这里使用切片:我们确定'@'符号与.index('@')一起放置的索引,我们切换为[:...]最多(但不包括在内) )'@'标志。所以:

>>> email='foo@bar.com'
>>> email[:email.index('@')]
'foo'

然后我们只是计算是否&#34;我们的&#34; '@'符号前的部分小于'@' other符号的部分。