简体   繁体   English

How to convert List of List to flat List from Class Object output in Python without getting error “'User' object is not iterable”

[英]How to convert List of List to flat List from Class Object output in Python without getting error “'User' object is not iterable”

class User:
    def __init__(self, id, dbcname, username, password):
        self.id = id
        self.dbacname = dbcname
        self.username = username
        self.password = password
    def __repr__(self):
        return f'{[self.username, self.password, self.dbcname]}'

users = []
users.append(User(id=1, dbcname='dbc1', username='user0', password='pwd1'))
users.append(User(id=1, dbcname='dbc2', username='user1', password='pwd2'))
print(users[1])

it gives output as ['user1', 'pwd2', 'dbc2']它给 output 作为 ['user1', 'pwd2', 'dbc2']

but I wanted to know how to access the value user1但我想知道如何访问值 user1

Access the attribute you created访问您创建的属性

users = []
users.append(User(id=1, dbcname='dbc1', username='user0', password='pwd1'))
users.append(User(id=1, dbcname='dbc2', username='user1', password='pwd2'))
print(users[1].username)

Simple, just add the extension (you also have a typo where bdcname became dbaname ) :很简单,只需添加扩展名(您也有一个错字,其中bdcname变成dbaname

class User:
    def __init__(self, id, dbcname, username, password):
        self.id = id
        self.dbcname = dbcname
        self.username = username
        self.password = password
    def __repr__(self):
        return f'{[self.username, self.password, self.dbcname]}'

users = []
users.append(User(id=1, dbcname='dbc1', username='user0', password='pwd1'))
users.append(User(id=1, dbcname='dbc2', username='user1', password='pwd2'))
print(users[1].username)

Output: Output:

user1

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何将对象转换为可迭代的(列表)? - How to convert an object to iterable (list)? 如果不是可迭代的话,将python,wrap和object放入一个列表中 - python, wrap and object into a list if not is an iterable [] 和 list() 和 'int' object 在 Python 中不可迭代 - [] and list() and 'int' object is not iterable in Python 遍历 Python 列表获取 TypeError:'NoneType' object 不可迭代 - Iterating Through Python List Getting TypeError: 'NoneType' object is not iterable Python: 获取`TypeError: "NoneType" object is not iterable` with no None elements of list - Python: Getting `TypeError: "NoneType" object is not iterable` with no None elements of list 'int'对象在列表上不可迭代 - 'int' object is not iterable on list 如何从 python 列表中删除 class object? - How to remove a class object from a python list? 尝试使用Python列出EC2标签,但出现错误:“ errorMessage”:“'NoneType'对象不可迭代” - Trying to list EC2 tags using Python but getting error: “errorMessage”: “'NoneType' object is not iterable” 在类中迭代列表时,“类型”对象不可迭代 - 'type' object is not iterable when iterating list in class 在来自 beautifulsoup 的列表上使用 len 时,Python 'int' 对象不可迭代 - Python 'int' object is not iterable when using len on a list from beautifulsoup
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM