Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 删除字符串周围的引号_Python - Fatal编程技术网

Python 删除字符串周围的引号

Python 删除字符串周围的引号,python,Python,上面的代码返回以下格式的字符串: 输出:[10,5,15'*','*','*','*',20] 我如何更改它,使*(星号),无值,不被引号包围?我尝试了下列方法,但没有成功 array = format([ v if v is not None else "*" for v in self._tree.bfs_order_star() ]) 打印时,使用replace()方法删除引号: array = format([ v if v is not None else "*" f

上面的代码返回以下格式的字符串:

输出:
[10,5,15'*','*','*','*',20]

我如何更改它,使*(星号),无值,不被引号包围?我尝试了下列方法,但没有成功

array = format([
    v if v is not None else "*" for v in self._tree.bfs_order_star()
])
打印时,使用
replace()
方法删除引号:

array = format([
    v if v is not None else "*" for v in self._tree.bfs_order_star()
]).strip('"\'')

您可以创建一个类/对象,其表示形式实际上只是一个星形:

#Convert list to string and replace/remove specific characters.
str(lst).replace("[character to replace/remove]", "[character to replace with or leave empty to remove.]")
演示:

class Star:
    def __repr__(self):
        return '*'

您想要
[10,5,15,*,*,*,*,20]
?这不是一个有效的python表达式,
“*”
表示它是一个字符串。如果您打印字符串,它将只是
*
字符串将始终具有的值,而您可以使用
None
列表只能包含值。值可以是字符串、数字、嵌套列表或dict。星星不是这些。引号不是值的一部分,而是字符串在Python中的表示方式。听起来你以后会将整个列表作为一个str使用吗?您想要类似于
str([10,5,15'*','*','*','*',20])的内容。替换(“'”,”)
>>> print([1, '*', 2])
[1, '*', 2]
>>> print([1, Star(), 2])
[1, *, 2]