Python &引用/1/2/3/";。拆分(“拆分”)
天气太热了&我可能是智障Python &引用/1/2/3/";。拆分(“拆分”),python,string,Python,String,天气太热了&我可能是智障 >>> "/1/2/3/".split("/") ['', '1', '2', '3',''] 开头和结尾的空元素是什么 编辑:谢谢大家,我把这归因于热引起的脑衰竭。不过,这些文档并不是最清晰的 第一个“/”之前或最后一个“/”之后有单词吗?比较: "1/2/3".split("/") 空元素仍然是元素 您可以使用strip(“/”)从字符串的开头/结尾修剪分隔符。斜杠是分隔符,因此在第一个元素之前和最后一个元素之后都有空元素。您在/上进行拆分。您
>>> "/1/2/3/".split("/")
['', '1', '2', '3','']
开头和结尾的空元素是什么
编辑:谢谢大家,我把这归因于热引起的脑衰竭。不过,这些文档并不是最清晰的
第一个“/”之前或最后一个“/”之后有单词吗?比较:
"1/2/3".split("/")
空元素仍然是元素
您可以使用
strip(“/”)
从字符串的开头/结尾修剪分隔符。斜杠是分隔符,因此在第一个元素之前和最后一个元素之后都有空元素。您在/上进行拆分。您有4个/
,因此,返回的列表将有5个元素。正如JLWarlow所说,字符串中还有一个额外的“/”。下面是另一个例子:
>>> "//2//3".split('/')
['', '', '2', '', '3']
这正是我所期望的,但我们都不同:)
您希望从中得到什么::“1,2,3”。拆分(“,”?您可以使用strip()
删除前导字段和尾随字段。。。然后像以前一样调用split()
。这是因为在1之前和3之后都有一个/来删除空字符串(如果字符串中碰巧有/
,也会从中间删除它们):[x代表“/1/2/3/”中的x.split(“/”)如果是x']
@Brian!应该将其作为答案发布。@ceejayoz:发布使用的解决方案,如果x'
?请不要。只需添加:也就是说,每个分隔符都有前后两个分隔符,包括第一个和最后一个分隔符。总结:“/1/2/3/”。strip(“/”)。split(“/”)
。最简单的修复方法。除了在python中,它是strip()
,而不是trim()
:)该死的,我甚至知道。我怎么打错了,我永远也不会知道。很快修复。呃,现在我看到Brian在之前的评论中发布了几乎完全相同的解决方案。你可以用检查x
,除非它们是正向斜杠!
[x for x in "//1///2/3///".split("/") if x != ""]
[x for x in "//1///2/3///".split("/") if x != ""]