您如何将列表放在网络浏览器链接中?

问题描述

我正在尝试创建一个程序,可以在您的浏览器中打开一个随机的 Bitly 链接

import random
import webbrowser

#set the length of the url
length = random.randint(1,7)

#list of all possible characters in the key
characters = ['a','A','b','B','c','C','d','D','e','E','f','F','g','G','h','H','i','I','j','J','k','K','l','L','m','M','n','N','o','O','p','P','q','Q','r','R','s','S','t','T','u','U','v','V','w','W','x','X','y','Y','z','Z',]

#create the string of text on the end of the link
key = []
for x in range (1,length):
    key.append(random.choice(characters))

webbrowser.open_new_tab('https://bit.ly/',*key,sep='')

当我这样做时,它给了我

TypeError: open_new_tab() 得到了一个意外的关键字参数 'sep'

但是,如果我不能将“sep”放入该参数中,我还应该如何使链接正确打开?

解决方法

你可以使用

key_str = "".join(key)

key 中的所有字符连接成一个字符串。 URL 可以用

构造
url = f"https://bit.ly/{key_str}"

顺便说一下,您可以使用 string.ascii_letters,而不是定义大小写字母列表。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...