Python程序:删除给定字符串的后缀
在Python中,我们有一些内置的字符串函数,例如rstrip()、replace()和endswith(),可以用来删除给定字符串的后缀。删除后缀是指删除字符串末尾的一组字符。有时我们会发现数据中存在类似后缀的错误,如果我们想删除它,会花费大量时间,这可以通过给出算法来解决。结尾字符或子串称为后缀。
让我们通过一个例子来理解这一点:
给定的字符串变量是BRIGHTNING,删除后缀NING后,该单词变为BRIGHT。
语法
endswith()
这是Python中预定义的方法,如果字符串以给定值结尾,则返回true,否则返回false。
rstrip()
这是Python中预定义的方法,它从字符串末尾删除给定的后缀字符。
replace(“replace_string_var_name”, “”)
这是一个Python中的内置方法,它接受两个参数:
replace_string_var_name - 指明变量的名称。
空字符串 - 空字符串用“”表示,它存储给定字符串中其余的子字符串。
算法
我们正在获取输入字符串变量。
然后我们使用if语句来设置预定义的方法,即endswith,并使用输入字符串变量来获取后缀子字符串。如果找到子字符串在结尾,则返回true,否则返回false。(示例1和示例2)
然后我们使用预定义的方法,即rstrip,以及输入字符串变量。此方法从末尾删除字符串。(示例3)
然后使用if语句检查使用endswith()函数删除子字符串的条件。(示例4)
接下来计算后缀子字符串的长度操作,并执行以下操作:
str_name = str_name[:-len("car")] - 通过这种表示方法,我们用减号表示给定后缀子字符串的长度。(示例1)
str_name = str_name[:len(str_name)-len(suffix_name)] - 通过这种表示方法,我们从给定字符串中减去字符串的长度。(示例2)
接下来,使用replace方法替换指定的字符串并获取结果。(示例4)
最后,我们借助输入字符串变量打印结果。
因此,我们将以此方式删除后缀子字符串。
示例1
在这个程序中,我们使用预定义函数endswith()来设置后缀字符串,并通过表示减号“-”来删除后缀的长度,然后获取结果。
str_name = "RANSOMEWARE" if str_name.endswith("car"): str_name = str_name[ :-len("WARE") ] print( "After deleting the given suffix:", str_name )
输出
After deleting the given suffix: RANSOME
示例2
在这个程序中,我们采用两个变量——输入字符串和后缀字符串,然后使用预定义函数endswith()设置后缀字符串。为了删除后缀子字符串,我们从给定字符串变量的总长度中减去后缀变量的长度。
str_name = "Doctorate" suffix_name = "ate" if str_name.endswith( suffix_name ): str_name = str_name[ :len(str_name)-len(suffix_name) ] print( "After deleting the given suffix:", str_name )
输出
After deleting the given suffix: Doctor
示例3
在这个程序中,我们使用预定义函数rstrip()从给定字符串中删除后缀子字符串并获取结果。
str_name = "Rectangle" str_name = str_name.rstrip( "gle" ) print( "After deleting the given suffix:", str_name )
输出
After deleting the given suffix: Rectan
示例4
在下面的示例中,我们将开始将输入字符串存储在变量str_name中。然后将要删除的子字符串存储在变量del_suffix中。然后使用if语句检查使用内置方法endswith()的字符串删除条件。接下来,使用接受两个参数的replace方法- del_suffix(删除子字符串)和""(空字符串,用于存储其余字符串)。然后使用变量del_suffix打印结果。
str_name = "abcdefghi" del_suffix = "ghi" if str_name.endswith(del_suffix): str_name = str_name.replace(del_suffix, "") print("After delete the substring from the given string:",str_name)
输出
After deleting the substring from the given string: abcdef
结论
我们探讨了从给定字符串中删除后缀子字符串的概念。我们看到了这个程序的三个示例,并且解决方法通过采用长度运算和预定义方法而有所不同。这种类型的程序通常用于删除以相同后缀结尾的多个单词。