You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何打印列表内的链接而不显示外层列表方括号

解决Python打印列表去除外层方括号的方案

方法1:直接切片处理(最适配你的需求)

你要的输出是保留列表内部的单引号、逗号分隔格式,仅去掉外层方括号,直接把列表转成字符串后切除首尾字符即可。
把你代码里的print(produtos)替换为:

print(str(produtos)[1:-1])

原理:str(produtos)会输出"['链接1', '链接2', ...]"格式的字符串,[1:-1]切片会跳过第一个字符[和最后一个字符],完全符合你要求的输出样式。


方法2:灵活自定义格式(适合后续调整需求)

如果后续你需要调整分隔符、要不要保留引号等格式,用join方法手动拼接即可:

# 保留单引号、逗号分隔的写法
print(', '.join(f"'{link}'" for link in produtos))
# 如果不需要单引号,直接改成 print(', '.join(produtos)) 即可

额外优化提示

你当前把produtos定义为全局列表,每次5秒的定时任务执行时都会往里面追加新抓取的链接,会导致列表内容重复累加、越来越冗余。如果你每次只需要输出当次抓取的链接,建议把列表初始化放到函数内部:

@tasks.loop(seconds=5)
async def aviso():
    produtos = [] # 移到函数内部,每次执行重新初始化
    request = requests.get("https://www.nike.com.br/snkrs#estoque")
    soup = bs4(request.text, "html.parser")
    links = soup.find_all("a", text="Comprar", class_="btn")
    for link in links:
        produtos.append(link["href"])
    print(str(produtos)[1:-1])
    # 如果要发送到Discord频道,直接用处理后的字符串即可:
    # await 你的频道对象.send(str(produtos)[1:-1])

内容的提问来源于stack exchange,提问作者user15594988

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.14 23:24:03