Skip to main content
 首页 » 编程设计

python之如何直接从列表范围分配变量值

2025年05月04日16落叶

我正在尝试为这段代码找到一种更好、更 pythonic 的方式:

for i in rows: 
    row_data = i.findAll('td') 
    serial = row_data[0] 
    hostname = row_data[1] 
    owner = row_data[2] 
    memory = row_data[3] 
    processor = row_data[4] 
    os = row_data[5] 
    model = row_data[6] 
    ip = row_data[7] 

我正在尝试做这样的事情:

 [serial, hostname, owner, memory, etc..] = row_data[:7] 

关于如何实现这一点有什么想法吗?

无论有没有索引,我都会收到这条消息: [序列号、主机名、所有者、内存、处理器、操作系统、型号、be_ip] = row_data ValueError:要解压的值太多

请您参考如下方法:

你完全可以这样做:

>>> row_data = ['serial', 'hostname', 'ip'] 
>>> [serial, hostname, ip] = row_data 
>>> serial 
'serial' 
>>> hostname 
'hostname' 
>>> ip 
'ip' 

[serial, hostname, ip] 两边的方括号是可选的。