如何从python中的列表中删除括号

时间:2016-08-18 05:14:07

标签: python

我有一个清单:

db.getCollection('products').find({},{entityId:1})

我使用了不同的方法,但我没有帮助。

list1 = ['field1','field2','field3']

但它将字符串中的每个字符打印为单独的单词,如

list1= ( " ".join( repr(e) for e in list1) )

但我希望输出如下:

"f","i","e","l","d".

那么如何在不修改字符串的情况下仅从列表中删除括号。

6 个答案:

答案 0 :(得分:3)

想象(问题在评论中没有说清楚)你正在寻找:

print ",".join(list1)

产地:

field1,field2,field3
  

那么如何在不修改的情况下仅从列表中删除括号   字符串。

变量list1是一个列表,当列表呈现为String时,包含[]括号。您可以使用join提供自己的字符串表示形式。如果你真的想用字符串输出产生字符串输出,你可以做:

print "'" + "','".join(list1) + "'"

答案 1 :(得分:0)

多田! str(list1).strip('[').strip(']')

不确定是否可以输出python:

  

list1的=' field1的'' FIELD2''字段3'

这不是有效的python语法...(除非定义元组):

>>>list1='field1','field2','field3'
('field1', 'field2', 'field3')

这是你能得到的最接近的地方:

>>>list1 = ['field1','field2','field3']
# convert list to string
>>>foo = str(list1)
# strip the '[ ]'
>>>print(foo.strip('[').strip(']'))
'field1', 'field2', 'field3'
>>>print("list1=%s" % foo.strip('[').strip(']'))
list1='field1', 'field2', 'field3'

答案 2 :(得分:0)

听起来您想要以特定格式打印列表。您可以使用python3中的print()函数或python2中的print语句执行此操作。

首先,创建一个表示您希望如何输出列表的字符串:

output = ",".join("'" + item + "'" for item in list1)

这种方法有两个步骤。首先,我们根据您所需的输出,在列表中的每个项目的外部添加引号。其次,我们以逗号加入列表中的项目。

如果你想要字符串' list1 ='在输出的开头你可以像这样简单地添加它:

output = 'list1=' + output

然后,只需在python2中使用print output或在python3中使用print(output)打印此字符串。

这应该打印以下行:

list1='field1','field2','field3'

答案 3 :(得分:0)

以前的大多数答案都可行,但也许最简单的答案是使用for循环:

mylist = ['1','2','3','4']

print('list=',end='')
for myvar in mylist:
    print(myvar,end='')

print('')

输出:

list=1234

然而,这只适用于python 3.4,因为你必须使用print函数而不能使用print语句

答案 4 :(得分:0)

试试这个: false

答案 5 :(得分:0)

我希望这会有所帮助。 E = [1,2,3] F =应用re.sub(R '[[]]', '',STR(E [0]))

输出为:1