我想从这个字符串中删除@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(
输出: 我的邮箱