Python:使用lstrip从字符串中删除一个单词

Python:使用lstrip从字符串中删除一个单词,python,Python,我有如下字符串:st='Product=Product Name 25' 我想跳。所需输出:out='Product Name 25' 为此,我像out=st.lstrip('Product=') 这里我得到的输出是out='Name 25'。这是我不想要的。 因为它正在删除我字符串中的所有事件,但需要删除第一个事件 所需输出应为:out='Product Name 25'使用拆分: >>> st= 'Product=Product Name 25' >>>

我有如下字符串:
st='Product=Product Name 25'
我想跳。所需输出:
out='Product Name 25'

为此,我像
out=st.lstrip('Product=')

这里我得到的输出是
out='Name 25'
。这是我不想要的。 因为它正在删除我字符串中的所有事件,但需要删除第一个事件

所需输出应为:out='Product Name 25'使用拆分:

>>> st= 'Product=Product Name 25'
>>> st.split("Product=")[1]
'Product Name 25'

使用
替换

st = 'Product=Product Name 25'
print(st.replace('Product=', ''))
>> Product Name 25
如果不是因为
“=”
的原因,您还可以利用
replace
count
参数,例如:

st = 'Product Product Name 25'
print(st.replace('Product', '', 1))
>> Product Name 25

您可以执行
out=st.replace('Product=Product','Product')
out=st.replace('Product=Product','')
。我倾向于简单易读

为了防止从文本文件中读取键值对,标准库中有一个python模块用于此:

根据文档,lstrip
函数删除字符中的字符

>>> help(str.lstrip)

Help on method_descriptor:

lstrip(...)
    S.lstrip([chars]) -> str

    Return a copy of the string S with leading whitespace removed.
    **If chars is given and not None, remove characters in chars instead.**
因此
st.lstrip('Product=')
删除了“Product=Product Name 25”开头的“p”、“r”、“o”、“d”、“u”、“c”、“t”和“=”。然后,这两个词被删除

我认为您的字符串表示“key=value”对。 拆分的最佳方法是使用
split()
方法:

st = "Product=Product Name 25"

key, value = st.split("=")
print("key: " + key)
print("value: " + value)
你会得到:

key: Product
value: Product Name 25
value only: Product Name 25
trimmed value: Product Name 25
只有以下值:

value = st.split("=")[1]
print("value only: " + value)
你会得到:

key: Product
value: Product Name 25
value only: Product Name 25
trimmed value: Product Name 25
如果您想要“左修剪”:

你会得到:

key: Product
value: Product Name 25
value only: Product Name 25
trimmed value: Product Name 25

这是因为接受一组要删除的字符,而不是要删除的字符串模式。您说要删除第一个出现的字符。这意味着字符串
Product=
可以出现在字符串中的任何位置,而不仅仅是在开始时?