Python 将列表值解包为文本

Python 将列表值解包为文本,python,Python,我有一个列表,我想把它解压缩成文本的一部分。 目标是最终将文本导出到txt文件,然后使用VPN将其实现到我们的数据库中 案文如下: '"name": "----"', '"lei": " "', '"parentId": "0"', '"status": "ACTIVE"', '"type": "1"', '"country": "----"', '"region": "1"', '"address": "----"', '"domains": "None"' 它从一个数据帧开

我有一个列表,我想把它解压缩成文本的一部分。 目标是最终将文本导出到txt文件,然后使用VPN将其实现到我们的数据库中

案文如下:

'"name": "----"',

'"lei": " "',

'"parentId": "0"',

'"status": "ACTIVE"',

'"type": "1"',

'"country": "----"',

'"region": "1"',

'"address": "----"',

'"domains": "None"'
它从一个数据帧开始,我把它转换成一个列表,所以基本上每个列表中的每个值都与其他列表中具有相同索引的相同值相关联

目标是有318个文本,就像我写的那样,每个文本都有3个值

这些列表是-
“姓名”
“国家”
“地址”

我曾想过使用带有for循环的map,但我不太确定如何做到这一点

有什么建议吗

format_string = """
'"name": "{}"',
'"lei": " "',
'"parentId": "0"',
'"status": "ACTIVE"',
'"type": "1"',
'"country": "{}"',
'"region": "1"',
'"address": "{}"',
'"domains": "None"'
"""

for data in zip(Name, Country, Address):
    print(format_string.format(*data))

这就是您想要的吗?

我认为您可以使用python的字符串格式来实现您想要做的事情,并且,正如您所建议的,使用map对所有文件执行任务

其思想是编写一个通用文本,就像您介绍的文本一样,将“---”字段替换为“{0}”、“{1}”、“{2}”字段。然后,应用
text.format(姓名、国家/地区、地址)
将按顺序用
name
country
address
字段的内容填充字段

要映射它,还需要使用splat操作符(
*
)解压缩包含参数的元组:
text.format(*tuple\u of_arguments)

因此,可接受的解决方案是使用以下形式的代码:

list_of_tuples = [
        ('nameA', 'countryA', 'adressA'),
        ('nameB', 'countryB', 'adressB')
    ] # fill this, and maybe use a generator instead (e.g. using zip)
for e in map(lambda x : text.format(*x), list_of_tuples):
    # do what you want of the formatted text stored in e

我希望这有帮助

在这个上下文中,“unpack”是什么意思?从列表中取每个值并将其放在“---”的位置,这样基本上我有一个名称列表-名称列表中的第一个值将转到“---”后面的“---”中,该名称与“to country”和“Address”相同是字符串变量中的文本吗?它在档案里吗?还有什么吗?只是我创建的一个字符串..与其将数据帧转换为列表并将列表转换为字符串,然后尝试对该字符串执行操作,不如将其保留为数据帧更容易吗?很抱歉,这些问题都没有直接的帮助--我仍然不完全确定我们要做什么。