从字符串末尾删除字符集



我想从这个字符串中删除@email.com,即使"myemail"部分被更改,代码仍然应该有效 我这样做了:

email = "myemail@email.com"
a = a.replace(a[-10:-1],'')
print(a)

输出:

myemailm

我也想删除那个"m",但我找不到这样做的方法。

提前谢谢。

您的切片专门排除最后一个字符。 您还通过使用切片和替换使事情变得比需要的更复杂;其中任何一个单独都可以更轻松地完成工作:

>>> "myemail@email.com"[:-10]
'myemail'
>>> "myemail@email.com".replace("@email.com", "")
'myemail'
>>> "myemail@email.com".split("@")[0]
'myemail'

找到@的索引并保留第一部分

email = "myemail@email.com"
email = email[:email.index('@')]
print(email)

输出:

myemail

你可以像下面这样尝试:

email = "myemail@email.com"
a = email.split('@')
a[0]

或者你可以通过拆分来制作它。

In [1]: "myemail@email.com".split("@")[0]                                                                                                     
Out[1]: 'myemail'
email = "myemail@email.com"
a = email.split("@")[0]
print(a)

给出输出:

myemail

email.split("a")返回一个列表["myemail", "email.com"],您可以使用[0]从中获取第一个元素

您可以将电子邮件拆分为一个列表,使用 @ 作为分隔符,然后打印列表中的第一项,这将是 @ 之前的所有内容。这将考虑不同长度的域名。例如,@yahoo.com 比 @gmail.com 长,您必须考虑各个长度。

email = "myemail@email.com"
a = email.split("@")[0]
print(a)

或者,您可以按原样使用替换方法,并根据具体情况进行操作,但拼接不正确。不包括停止值。所以根据你的说法a = a.replace(a[-10:-1] , '')你还没有从.com替换 m。如果你要说a = a.replace(a[-10:],'')你将替换从 -10 个索引到字符串末尾的所有内容。

另一个可能的解决方案是找到 @ 的索引。

a = email[0:email.index('@')]

代码:

电子邮件 ="myemail@email.com">

new_email = email.replace(email[-10:],''(

打印(new_email(

输出: 我的邮箱

相关内容

  • 没有找到相关文章

最新更新