在python中,您如何使变量在f'中划分一系列数字,这些数字被插入并一一运行

发布于 2025-01-20 16:54:40 字数 626 浏览 1 评论 0原文

我是编码世界的新手,所以也许有人可以帮助我。甚至可能是一个直接的问题。 目前,我正在使用Selenium和Python进行一个项目,但是到目前为止,我找不到任何有用的东西。 是否可以将F弦中的变量定义为一系列数字范围,这些数字插入了一个占位符,以便一个人可以单独检查每个F字符串?那是我到目前为止得到的。对于“ Terital”的每个值,“ Wunschliste”的范围应在8-18之间。第一个4,然后7岁,依此类推。

while not BuBu:

try:


    Wunschliste = range(8-18)
    tertial = '4,7,10'

    Wunsch1 = Wu1 = browser.find_element_by_xpath(f"/html/body/div[7]/div[2]/div/table/tbody/tr{Wunschliste}]/td[{tertial}]/img")
    Wu1.click()
    print("Wunsch1 eingeloggt")
    browser.find_element_by_class_name("pj_nicht_buchbar")
    print("nope")

    time.sleep(3)

除:...

谢谢!希望这是有道理的

I'm pretty new to the coding world, so maybe someone can help me. Might even be a straight forward problem.
Currently I'm using selenium and python for a project, but I can't find anything helpful so far.
Would it be possible to define the variables in a f-string as a range of numbers which are inserted in the placeholder one by one so selenium can check each f string seperately? Thats what I got so far. The range of "Wunschliste" is supposed to be between 8-18 for each of the values of "terital". First 4 then 7 and so on.

while not BuBu:

try:


    Wunschliste = range(8-18)
    tertial = '4,7,10'

    Wunsch1 = Wu1 = browser.find_element_by_xpath(f"/html/body/div[7]/div[2]/div/table/tbody/tr{Wunschliste}]/td[{tertial}]/img")
    Wu1.click()
    print("Wunsch1 eingeloggt")
    browser.find_element_by_class_name("pj_nicht_buchbar")
    print("nope")

    time.sleep(3)

except: ...

Thanks! Hope it makes sense

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

尤怨 2025-01-27 16:54:40

您可以编写嵌套的 for 循环来处理每种情况:

for Wunschliste in range(8,19):
    for tertial in [4,7,10]:
        Wunsch1 = Wu1 = browser.find_element_by_xpath(f"/html/body/div[7]/div[2]/div/table/tbody/tr{Wunschliste}]/td[{tertial}]/img")
        Wu1.click()

范围是从 8 到 19,因为最后处理的数字将为 18。

You can write nested for-loops to handle each case:

for Wunschliste in range(8,19):
    for tertial in [4,7,10]:
        Wunsch1 = Wu1 = browser.find_element_by_xpath(f"/html/body/div[7]/div[2]/div/table/tbody/tr{Wunschliste}]/td[{tertial}]/img")
        Wu1.click()

The range is from 8 to 19 because then last handled number would be 18.

情域 2025-01-27 16:54:40

range()函数返回给定范围之间给定数字的顺序。

此外, tertial 似乎是 整数 的列表。

因此,在将它们传递到XPath中时,您必须将它们转换为字符串字符,并且可以使用以下解决方案:

for Wunschliste in range(8,19):
    for tertial in [4,7,10]:
        Wu1 = browser.find_element_by_xpath(f"/html/body/div[7]/div[2]/div/table/tbody/tr{str(Wunschliste)}]/td[{str(tertial)}]/img")
        Wu1.click()
        print("Wunsch1 eingeloggt")

range() function returns the sequence of the given number between the given range.

Moreover, tertial seems to be a list of integers.

So while passing them within the xpath you have to convert them into string characters and you can use the following solution:

for Wunschliste in range(8,19):
    for tertial in [4,7,10]:
        Wu1 = browser.find_element_by_xpath(f"/html/body/div[7]/div[2]/div/table/tbody/tr{str(Wunschliste)}]/td[{str(tertial)}]/img")
        Wu1.click()
        print("Wunsch1 eingeloggt")
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文