gpt4 book ai didi

python - 在Python中在列表中分割行?

转载 作者:行者123 更新时间:2023-12-01 04:03:30 25 4
gpt4 key购买 nike

我是 Python 新手,但无法获得我想要的结果。我正在打开一个名为 urldata.txt 的文本文件,其中包含我需要按方案、服务器和路径进行分割的 URL。

我已经从文件中检索了数据:

urls = open("urldata.txt").read()
print(urls)

返回:

http://www.google.com

https://twitter.com/search?q=%23ASUcis355

https://github.com/asu-cis-355/course-info

我想将这些 URL 分成 3 个部分,这样当我输入时

urls.scheme()
urls.server()
urls.path()

当我输入时,它会返回每个 URL 的方案

urls.scheme()

'http','https','https'

然后当我输入时它会返回服务器

urls.server()

'google.com'
'twitter.com'
'github.com'

最后,它会返回我输入时的路径

urls.path() 

'/'
'/search?q=%23ASUcis355'
'/asu-cis-355/course-info'

我定义了一个类来执行此操作;但是,我收到一条错误消息,指出 'scheme() 缺少 1 个必需的位置参数:'self' 下面是我的类以及我创建的 def 部分。

class urls:
def __init__(self,url):
self.urls=urls
def scheme(self):
return urls.split("://")[0]
def server(self):
return urls.split("/")[2]
def path(self):
return urls.split(".com/")[1]

非常感谢任何帮助!

最佳答案

这已经存在了。它的名字叫urlparse :

from urllib.parse import urlparse

d = urlparse('https://twitter.com/search?q=%23ASUcis355')
print(d)

输出:

ParseResult(scheme='https', netloc='twitter.com', path='/search', params='', query='q=%23ASUcis355', fragment='')

关于python - 在Python中在列表中分割行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36098301/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com