如何解决Python中按顺序导入和插入单词
我想在序列和NOT RANDOMLY中导入和插入词,每次注册尝试使用单一用户名并停止直到注册完成。如果注册失败,然后退出并使用列表中的下一个用户名开始新注册,然后跳过如果注册成功。
我真的很困惑,因为我不知道。我试过这个代码,但它是随机选择的,我不知道如何使用“for循环”
import random
Copy = driver.find_element_by_xpath('XPATH')
Copy.click()
names = [
"Noah","Liam","William","Anthony"
]
idx = random.randint(0,len(names) - 1)
print(f"Picked name: {names[idx]}")
Copy.send_keys(names[idx])
我怎样才能让它按顺序选择下一个单词并且不随机 任何帮助请
解决方法
我假设您对代码所做的事情感到满意,但它选择的名称是随机的。这将所有内容缩小到一行,即随机选择名称的一行:
idx = random.randint(0,len(names) - 1)
很简单,你想要“按顺序而不是随机的下一个单词”: https://docs.python.org/3/tutorial/datastructures.html#more-on-lists
如果您查看我提供的链接,您会看到列表有一个 pop() 方法,从列表中返回和删除一些元素.我们想要第一个,所以我们将提供 0 作为 pop 方法的参数。
我们修改行看起来像这样
name = names.pop(0)
现在您仍然希望使用 for 循环来循环包括名称选择在内的所有操作,因此您将所有代码封装在一个 for 循环中:
names = [
"Noah","Liam","William","Anthony"
]
for i in range(len(names)):
# ...
Copy = driver.find_element_by_xpath('XPATH')
Copy.click()
name = names.pop(0)
print(f"Picked name: {name}")
Copy.send_keys(name)
# ...
您可能会注意到名称列表不是在 for 循环中。那是因为我们不想每次尝试使用新名称时都重新分配列表。
如果您完全不确定 for 循环的工作原理或如何自己实现循环,您可能应该首先阅读它们的工作原理。
https://docs.python.org/3/tutorial/controlflow.html?highlight=loop#for-statements
最后但并非最不重要的一点是,您可以在我的示例中看到一些 # ...
注释,指出问题的另一部分的逻辑可能会在哪里:“然后注销并使用下一个用户名开始新的注册如果注册失败,则在列表中,如果注册成功则跳过。”我认为我们无法帮助您解决这个问题,因为您的问题中没有足够的上下文或示例。
请参阅this guide解释如何提出一个精心设计的问题,以便我们下次可以为您提供更多帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。