基于lis将列表包装为自定义字符串

2024-04-20 08:37:46 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我有一个列表,如下所示:

 mylist = ['100003028593816', '1784394111', '100008137385157', '100000462582000','100001633550680', '100000757743079']

(此列表可根据不同的输入等而变化。这只是一个示例)

我想从数组中创建一个如下所示的字符串。你知道吗

string = '{"100003028593816":1,"1784394111":1,"100008137385157":1,"100000462582000":1,"100001633550680":1,"100000757743079":1}'

(注意:请看它们是如何与上面的值相同的,它们只是包装方式不同而已。这就是他们需要张贴的方式。所以我非常想从数组中获取值,并将它们包装为{“value1”:1,“value2”:1}等


Tags: 字符串示例列表string方式数组value1value2
3条回答

虽然我认为你应该先发布你已经尝试过的代码,不应该要求调羹,但是,下面是你的答案,简单易懂:

mylist = ['100003028593816', '1784394111', '100008137385157', '100000462582000','100001633550680', '100000757743079']
str='{'
for i in range(len(mylist)):
    str+='\"'+mylist[i]+'\":1,'
str=str[:-1]    #remove the last trailing comma
str+='}'
print str

输出:

{"100003028593816":1,"1784394111":1,"100008137385157":1,"100000462582000":1,"100001633550680":1,"100000757743079":1}

下面是一种使用列表理解的方法:

'{%s}' % ','.join('"%s":1' % a for a in mylist)
str(dict.fromkeys(mylist,1))

很好。。。但是它会破坏你的顺序(dict没有顺序,但是list有顺序)

相关问题 更多 >