所以我有這個代碼:def validate_username(username): find_username = cursor.execute("SELECT username FROM user WHERE username = ?", (username, )) if find_username.fetchone() is not None: username_is_valid = False invalid_reason = 'Username already exists' elif len(username) > 255: username_is_valid = False invalid_reason = 'Invalid format' elif not match(r"[^@]+@[^@]+\.[^@]+", username): username_is_valid = False invalid_reason = 'Username must be an email address' else: username_is_valid = True invalid_reason = None return username_is_valid, invalid_reason因此,顯然,它將返回其中一個:(False, 'Username already exists')(False, 'Invalid format')(False, 'Username must be an email address')(True, None)現在我想做的是將這兩個參數傳遞到變量中,以便它們可以重用,打印等,但由于某種原因,我無法真正找到如何在線進行;我假設是因為我沒有正確地表達我的問題。也許這里有人可以提供一些指導?基本上,這里的目標是使用用戶名運行函數,然后如果用戶名無效,請打印為什么它無效,如果它有效,則繼續。
1 回答

慕田峪7331174
TA貢獻1828條經驗 獲得超13個贊
只需將輸出分配給兩個變量,如下所示:
username_is_valid, invalid_reason = validate_username(username)
或者,如果將輸出分配給單個變量,則可以使用切片訪問其元素:
username_validation = validate_username(username)
username_is_valid = username_validation[0]
invalid_readon = username_validation[1]
添加回答
舉報
0/150
提交
取消