在 Python 中按顺序导入和插入单词
Import and insert word in sequence in Python
我想在序列和中导入和插入单词不是随机的,每次注册尝试都使用单个用户名和停止,直到注册完成[=34] =].如果 REGISTRATION 失败,然后注销并使用列表中的 next 用户名开始 new 注册,如果注册成功,跳过。
我真的很困惑,因为我没有头绪。我试过 code 但它随机选择,我 no 不知道如何使用“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
如果你看一下我提供的 link,你可以看到列表有一个 pop() 方法,从列表中返回和删除一些元素。我们想要第一个,所以我们将提供 0 作为 pop 方法的参数。
我们将行修改为如下所示
name = names.pop(0)
现在您仍然想要 for-loop 循环遍历包括名称选择在内的所有操作,因此您将所有代码封装在 for-loop 中:
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 解释如何提出精心设计的问题,以便我们下次能为您提供更多帮助。
我想在序列和中导入和插入单词不是随机的,每次注册尝试都使用单个用户名和停止,直到注册完成[=34] =].如果 REGISTRATION 失败,然后注销并使用列表中的 next 用户名开始 new 注册,如果注册成功,跳过。
我真的很困惑,因为我没有头绪。我试过 code 但它随机选择,我 no 不知道如何使用“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
如果你看一下我提供的 link,你可以看到列表有一个 pop() 方法,从列表中返回和删除一些元素。我们想要第一个,所以我们将提供 0 作为 pop 方法的参数。
我们将行修改为如下所示
name = names.pop(0)
现在您仍然想要 for-loop 循环遍历包括名称选择在内的所有操作,因此您将所有代码封装在 for-loop 中:
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 解释如何提出精心设计的问题,以便我们下次能为您提供更多帮助。