如何用逗号分割包含一组字符串的列表?

Ban*_*lai 3 python python-3.x

我从CSV文件读取的列表中有一组字符串,看起来像这样:

myList = ('17.0.1.34', '17.1.182.21', '714'),('203.84.210.248', '27.111.228.3', '10310'),('202.73.40.45', '27.111.228.6', '18106'),...
Run Code Online (Sandbox Code Playgroud)

我想将其存储到具有三个字段的数据库(Django)中:

fieldOne = '17.0.1.34', '203.84.210.248','202.73.40.45', ....
fieldTwo = '17.1.182.21', '27.111.228.3', '27.111.228.6', ...
fieldThree = '714', '10310', '18106',...
Run Code Online (Sandbox Code Playgroud)

我该怎么办?

Gre*_*Guy 5

您有一个三元组列表:

myList = [
    (a1, b1, c1),
    (a2, b2, c2),
    (a3, b3, c3),
    ...
]
Run Code Online (Sandbox Code Playgroud)

您要将这个列表重构为三个变量:

fieldOne = [a1, a2, a3, ...]
fieldTwo = [b1, b2, b3, ...]
fieldThree = [c1, c2, c3, ...]
Run Code Online (Sandbox Code Playgroud)

您可以使用列表理解来做到这一点:“通过k从”的每个元素中获取th值来创建列表myList。看起来像这样:

fieldOne = [i[0] for i in myList]    # k = 0
fieldTwo = [i[1] for i in myList]    # k = 1
fieldThree = [i[2] for i in myList]  # k = 2
Run Code Online (Sandbox Code Playgroud)

当然,如果元组的长度可变,则会变得更加复杂-但这些是基础知识,您可以根据需要使用它们来解决问题。