问题描述
我想在“ ::”之后分割此列表,并且只想在所有条目中打印“ ::”之后的字符。
a=["Hi :: Abhishek","Hi :: Ashish","Hi :: Arnav","Hi :: Saurabh"]
b=str(a.split("::")[1])
解决方法
解决方案:
res = [x.split('::')[1] for x in a]
print (res)
[' Abhishek',' Ashish',' Arnav',' Saurabh']
,
您可以这样做:
[x.split('::')[1].strip() for x in a]
输出:
['Abhishek','Ashish','Arnav','Saurabh']
,
在python中,您可以通过多种方式执行此操作。其中一些在下面。
使用split
[i.split("::")[1] for i in a]
使用index
[i[i.index("::")+2:] for i in a]
使用regex
[re.match("^.*?::(.*?)$",i)[1] for i in a]
使用map
和split
list(map(lambda x: x.split("::")[1],a))
所有这些都产生相同的结果
[' Abhishek',' Saurabh']
如果您不希望开头有空格,可以strip()
。