首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Python - Range()

Python - Range()
EN

Stack Overflow用户
提问于 2022-06-15 02:10:35
回答 6查看 117关注 0票数 0

我是Python新手,我尝试创建一个简单的循环,以便列出具有值整数的userID的用户。然而,DB上的userID似乎很奇怪(用户1-72已经正确显示,旁边72已经是712 ),所以我需要跳过那些没有任何userID 73-711的用户。什么异常必须做,或者我需要创建一个简单的,如果其他?

代码语言:javascript
运行
复制
for iD in range(1, 720):
        loginID = iD
        for users in tls.getUserByID(loginID):
            fname = users.get('firstName')
            lname = users.get('lastName')
            print(loginID, fname +" "+ lname)

我所犯的错误是..。

代码语言:javascript
运行
复制
raise testlinkerrors.TLResponseError(
testlink.testlinkerrors.TLResponseError: NO_USER_BY_ID_LOGIN: (getUserByID) - Cannot Find User with DB ID (73)
EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2022-06-15 17:59:54

你可以试试这个@ckmb

代码语言:javascript
运行
复制
     for iD in range(60, 720):
        if iD not in [* range(73, 712)]:
            loginID = iD
            try:
                api_getUser = tls.getUserByID(loginID)
                for user in api_getUser:
                  fname = user.get('firstName')
                  lname = user.get('lastName')
                  print(loginID, fname + " " + lname)
            except testlinkerrors.TLResponseError:
                print(loginID, "not found")
                continue
票数 1
EN

Stack Overflow用户

发布于 2022-06-15 02:33:18

如果没有具有DB的用户,则调用tls.getUserByID(loginID)时将得到异常,因此需要通过try/except语句处理异常testlinkerrors.TLResponseError

代码语言:javascript
运行
复制
from testlink.testlinkerrors import TLResponseError

for iD in range(1, 720):
    loginID = iD
    try:
        users = tls.getUserByID(loginID)
    except TLResponseError:
        print(loginID, "not found !")
        continue
    for user in users:
        fname = user.get('firstName')
        lname = user.get('lastName')
        print(loginID, fname +" "+ lname)
票数 2
EN

Stack Overflow用户

发布于 2022-06-15 02:14:12

您可以使用一个简单的try/ can块跳过失败。

代码语言:javascript
运行
复制
for iD in range(1, 720):
        loginID = iD
        try:
            for users in tls.getUserByID(loginID):
                fname = users.get('firstName')
                lname = users.get('lastName')
                print(loginID, fname +" "+ lname)
        except testlinkerrors.TLResponseError:
            print("Skipping iD")
            continue
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72625203

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档