从字符串末尾删除字符集
Removing set of characters from the end of the string
我想从这个字符串中删除@email.com,即使 "myemail" 部分被更改,代码仍然可以工作
我这样做了:
email = "myemail@email.com"
a = a.replace(a[-10:-1],'')
print(a)
输出:
myemailm
我也想删除那个 'm',但我找不到这样做的方法。
提前致谢。
您的切片明确排除了最后一个字符。同时使用 slice 和 replace 也会让事情变得比他们需要的更复杂;这些中的任何一个都可以更简单地完成工作:
>>> "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")
returns 列表 ["myemail", "email.com"]
您可以使用 [0]
从中获取第一个元素
您可以将电子邮件拆分为一个列表,使用 @ 作为分隔符,然后打印列表中的第一项,即 @ 之前的所有内容。这将解释不同长度的域名。例如,@yahoo.com 比@gmail.com 长,您必须考虑各自的长度。
email = "myemail@email.com"
a = email.split("@")[0]
print(a)
或者你也可以直接用replace的方式,具体情况具体分析,但是你的拼接不对。不包括停止值。因此,根据您的说法 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(电子邮件[-10:],'')
打印(new_email)
输出:
我的邮箱
我想从这个字符串中删除@email.com,即使 "myemail" 部分被更改,代码仍然可以工作 我这样做了:
email = "myemail@email.com"
a = a.replace(a[-10:-1],'')
print(a)
输出:
myemailm
我也想删除那个 'm',但我找不到这样做的方法。
提前致谢。
您的切片明确排除了最后一个字符。同时使用 slice 和 replace 也会让事情变得比他们需要的更复杂;这些中的任何一个都可以更简单地完成工作:
>>> "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")
returns 列表 ["myemail", "email.com"]
您可以使用 [0]
您可以将电子邮件拆分为一个列表,使用 @ 作为分隔符,然后打印列表中的第一项,即 @ 之前的所有内容。这将解释不同长度的域名。例如,@yahoo.com 比@gmail.com 长,您必须考虑各自的长度。
email = "myemail@email.com"
a = email.split("@")[0]
print(a)
或者你也可以直接用replace的方式,具体情况具体分析,但是你的拼接不对。不包括停止值。因此,根据您的说法 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(电子邮件[-10:],'')
打印(new_email)
输出: 我的邮箱