暴躁小熊猫 发表于 2023-6-13 22:58:44

为什么去掉前缀和后缀会报错,难道我用的字符串不对???

>>> "www.iloveFishC.com".removeprefix("www.")
Traceback (most recent call last):
File "<pyshell#9>", line 1, in <module>
    "www.iloveFishC.com".removeprefix("www.")
AttributeError: 'str' object has no attribute 'removeprefix'

>>> "www.iloveFishC.com".removesuffix("www.")
Traceback (most recent call last):
File "<pyshell#10>", line 1, in <module>
    "www.iloveFishC.com".removesuffix("www.")
AttributeError: 'str' object has no attribute 'removesuffix'
>>>

isdkz 发表于 2023-6-13 23:01:52

根据你提供的错误信息,我猜想你可能在使用早于Python 3.9的版本。在Python 3.9之前, removeprefix 和 removesuffix 这两个方法是不存在的,这就解释了为什么你会遇到'AttributeError: 'str' object has no attribute 'removeprefix'/'removesuffix''的错误。

如果你必须在Python 3.9之前的版本中进行这些操作,你可以用其他方法来实现这两个操作,如下:

s = "www.iloveFishC.com"
prefix = "www."
suffix = ".com"

if s.startswith(prefix):
    s = s
if s.endswith(suffix):
    s = s[:-len(suffix)]

print(s)# 输出结果为:iloveFishC

在这个例子中,我们首先检查字符串是否以特定的前缀开始或后缀结束,如果是,我们就删除它。注意这种方法只能删除字符串的开始和结尾,如果前缀或后缀在字符串中间,它是不能删除的。

暴躁小熊猫 发表于 2023-6-13 23:08:37

isdkz 发表于 2023-6-13 23:01
根据你提供的错误信息,我猜想你可能在使用早于Python 3.9的版本。在Python 3.9之前, removeprefix 和 rem ...

应该是版本不支持,因为我在输入一些字符串的时候它会弹出来,但是输入removeprefix和removesuffix则没有

isdkz 发表于 2023-6-13 23:09:29

暴躁小熊猫 发表于 2023-6-13 23:08
应该是版本不支持,因为我在输入一些字符串的时候它会弹出来,但是输入removeprefix和removesuffix则没有

python3.9之前是没有这两个方法的
页: [1]
查看完整版本: 为什么去掉前缀和后缀会报错,难道我用的字符串不对???