如何在Python 3中切片输入语句的一部分?
我有一个问题,想要获取用户的电子邮件地址,然后返回与之关联的URL。比如说:'abc123@address.com' --> 'http://www.address.com'
我得到了这个:
def main():
email_address = input('Enter your email address (eg. abc123@address.com): ').strip()
strip_username = email_address.split('@', 1)[-1]
the_url(strip_username)
def the_url(url_ending):
print('Your associated URL is: http://www.' + str(url_ending))
main()
这个代码能实现我想要的功能,但里面的split('@'...)是我还没学过的东西。我是在网上找到的。我需要在这个程序中使用索引和切片,但如果我不知道用户电子邮件的长度,怎么用切片呢?我需要去掉'@'符号之前的所有内容,包括'@'符号,这样才能只留下'address.com',但我不知道具体的地址是什么。可能是hotmail、gmail等等。谢谢,我对Python还很陌生,所以我想尽量只用我在课堂上学到的知识。
2 个回答
0
split方法就是根据你给定的字符,把字符串切分成多个部分。所以:
"Hello@cat".split("@")
会得到
["Hello", "cat"]
然后你可以直接取这个数组的第一个索引,得到第一个@
符号后面的内容。
0
如果你不想用 str.split
这个方法的话,你可以通过索引和切片来实现类似的功能,像这样做。
>>> str = 'abc123@address.com'
>>> 'http://www.' + str[str.index('@')+1:]
'http://www.address.com'