【问题标题】:Using lists to generate url使用列表生成 url
【发布时间】:2021-03-09 20:59:30
【问题描述】:

我目前正在开发一个程序来帮助管理我的漫画书收藏。我想在相应列表中获取每部漫画的标题、期号和等级,并使用这些值填写 url 的 f 字符串部分以获取最后销售数据。到目前为止,我只能让它为每个列表的最后三个条目提供一个 url。理想情况下,它将提供三个单独的 url。

例子:

titles = ['thor', 'deadpool', 'spider-man']

issues = ['6', '19', '50']

grades = ['9.8', '9.8', '9.0']

phrases = []

for ti, iss, gr in zip(titles, issues, grades):
    phrases.append(ti)
    phrases.append(iss)
    phrases.append(gr)

for terms in phrases:
    soldurl=f"https://www.ebay.com/sch/900/i.html _from=R40&_nkw={ti}+%23{iss}+{gr}&_sacat=900&Certification=CGC&_dcat=900&rt=nc&LH_Sold=1&LH_Complete=1"

输出:

https://www.ebay.com/sch/900/i.html?_from=R40&_nkw=spider-man+%2350+9.0&_sacat=900&Certification=CGC&_dcat=900&rt=nc&LH_Sold=1&LH_Complete=1

【问题讨论】:

  • 欢迎来到 SO! phrases = [] 有什么意义?您在第一个循环中已经有了ti, iss, gr,为什么不立即构建 URL?不过,您可能希望将 soldurl 附加到列表或对其进行处理,否则它将始终指向它在上次迭代中具有的任何值。

标签: python list f-string


【解决方案1】:

检查一下:

titles = ['thor', 'deadpool', 'spider-man']

issues = ['6', '19', '50']

grades = ['9.8', '9.8', '9.0']

for ti, iss, gr in zip(titles, issues, grades):

    soldurl=f"https://www.ebay.com/sch/900/i.html _from=R40&_nkw={ti}+%23{iss}+{gr}&_sacat=900&Certification=CGC&_dcat=900&rt=nc&LH_Sold=1&LH_Complete=1"
    print(soldurl)

输出:

https://www.ebay.com/sch/900/i.html _from=R40&_nkw=thor+%236+9.8&_sacat=900&Certification=CGC&_dcat=900&rt=nc&LH_Sold=1&LH_Complete=1
https://www.ebay.com/sch/900/i.html _from=R40&_nkw=deadpool+%2319+9.8&_sacat=900&Certification=CGC&_dcat=900&rt=nc&LH_Sold=1&LH_Complete=1
https://www.ebay.com/sch/900/i.html _from=R40&_nkw=spider-man+%2350+9.0&_sacat=900&Certification=CGC&_dcat=900&rt=nc&LH_Sold=1&LH_Complete=1

【讨论】:

  • 谢谢!我希望它会像那样简单!
【解决方案2】:

这样的方法可能有用吗?

soldurls=["https://www.ebay.com/sch/900/i.html _from=R40&_nkw={ti}+%23{iss}+{gr}&_sacat=900&Certification=CGC&_dcat=900&rt=nc&LH_Sold=1&LH_Complete=1" for ti, iss, gr in zip(titles, issues, grades)]

应该返回一个 url 列表。

【讨论】:

    猜你喜欢
    • 2018-06-25
    • 2015-09-24
    • 1970-01-01
    • 2018-07-18
    • 1970-01-01
    • 2023-01-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多