如何在Python 3中切片输入语句的一部分?

0 投票
2 回答
3243 浏览
提问于 2025-05-01 00:01

我有一个问题,想要获取用户的电子邮件地址,然后返回与之关联的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'

撰写回答