在Python中按顺序导入并插入单词

问题描述 投票:0回答:1

我想在序列非随机导入插入单词,每次注册尝试都使用单个用户名并停止,直到注册完成。然后注销,如果注册失败,则使用列表中的下一个用户名开始注册,如果注册成功,则跳过

我真的很困惑,因为我不知道。我已经尝试过这个代码,但它是随机选择的,我不知道如何使用“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])

我怎样才能让它按顺序选择下一个单词并且
不是随机的

请帮忙

python import webforms
1个回答
0
投票

idx = random.randint(0, len(names) - 1)

很简单,您想要“按顺序而不是随机地下一个单词”:
https://docs.python.org/3/tutorial/datastructs.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

最后但并非最不重要的一点是,您可以在我的示例中看到一些

# ...

注释,指示问题的其他部分的逻辑可能会在哪里:

“然后注销并使用列表中的下一个用户名开始新注册,如果注册注册失败,注册成功则跳过。”

© www.soinside.com 2019 - 2024. All rights reserved.