gpt4 book ai didi

python - 如果事物存在,则对事物做某事

转载 作者:太空宇宙 更新时间:2023-11-03 17:33:26 25 4
gpt4 key购买 nike

做这样的事情的正确(Pythonic)方法是什么?

var = 'The quick brown fox'

def exists(query, string):
if query in string:
return query
else:
return None

if thing = exists('fox', var):
print(thing.upper())

这是我的示例,但我真正想做的是检查 Selenium Web 元素是否存在。我想避免将结果设置为变量,因为这违背了“存在”的目的。另外,我不想执行两次搜索,第一次返回 true/false,然后再次执行搜索,如果它是 true,则用它做一些事情。

最佳答案

这是一种有不止一种方法可以实现的情况。您可以做一些事情:

  1. 将结果视为零到一个元素的集合(在这种情况下,如果您将其称为 find_one 之类的名称,则更有意义):

    def find_one(query, string):
    if query in string:
    return [query]
    return []

    然后您可以在 for 循环中使用该函数:

    for existing_element in find_one(query, string):
    # Do something with existing element
    break
    else:
    # Here if we don't have any elements (note the `break` above)
  2. 传递回调作为第一个参数:

    def if_exists(cb, query, string):
    if query in string:
    cb(query)

    def run_on_valid_query(q):
    # Do something with q

    if_exists(run_on_valid_query, query, string)
  3. 硬着头皮使用中间变量:

    result = extract_from(query, string)
    if result: # Do work here

关于python - 如果事物存在,则对事物做某事,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31550604/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com