我有一个包含“:”的字符串,它显示如下:
: SHOES
我想将冒号和SHOES分开,然后创建一个仅包含“ SHOES”的变量
我已经使用df.split(':')拆分了它们,但是我应该如何仅使用“ SHOES”创建变量?
谢谢。
答案 0 :(得分:1)
您可以使用列表切片功能。然后使用lstrip和rstrip删除单词前后的多余空格。
df=": shoes"
d=df.split(":")[-1].lstrip().rstrip()
print(d)
答案 1 :(得分:0)
这是一个小样本。 stripValue
和newString
return
都是相同的value
。是更清洁的代码还是详细的代码:
# set initial string
myString = "string : value"
# split it which will return an array [0,1,2,3...]
stripValue = myString.split(":")
# you can create a new var with the value you want/need from the array
newString = (stripValue[1])
# or you can short hand it
print(stripValue[1])
# calling the new var
print(newString)
塞尔吉奥
答案 2 :(得分:0)
您可以使用'apply'方法对所有数据集执行循环,并使用'split()'拆分列。
这是一个示例:
import pandas as pd
df=pd.DataFrame({'A':[':abd', ':cda', ':vfe', ':brg']})
# First we create a new column just named a new column -> df['new_column']
# Second, we loop dataset with apply
# Third, we execute a lambda with split function, getting only text after ':'
df['new_column']=df['A'].apply(lambda x: x.split(':')[1] )
df
A new_column
0 :abd abd
1 :cda cda
2 :vfe vfe
3 :brg brg
希望这对您有所帮助。
答案 3 :(得分:0)
如果原始字符串始终以“:”开头,则可以使用以下命令删除前两个字符:
myString[2:]