繁体   English   中英

如何从python中的给定数据中删除字符串(不使用任何内置函数)?

[英]How to delete string from given data in python(without using any built-in function)?

我以这种方式创建了Insertstring函数:

def Insertstring(data,text,pos):
    count = 0
    Str = ""
    for i in data:
        if count==pos:
            Str+=text
        count+=1
        Str+=i      
    return Str

print(InsertStr("abcde","f",0))

它以正确的方式工作。

输出:

fabcde

我想以同样的方式创建Deletestring函数。 (它应该返回剩余的字符串)

#pos = Starting index to delete
#length = Length of data to be deleted

def Deletestring(data,pos,length):
    pass

print(InsertStr("abcde",2,3))

预期输出:

ab

没有任何内置插件,你可以只做切片:

def delete_string(data, pos, length):
    return data[:pos] + data[pos+length:]

print(delete_string("abcde", 2, 3))
# ab

可以进行字符串切片以从字符串中删除字符 - 我们可以通过将字符串切片然后将这些部分连接回来来从字符串中删除字符。

我们可以使用运算符 [] 对字符串进行切片。

stringObject[ start : stop : interval]

它返回一个包含给定字符串部分的新字符串对象,即它选择从startstop-1的范围,并具有给定的步长,即interval 您可以在此处找到有关此的详细信息。

def Deletestring(data,pos,length):
    return data[:pos] + data[pos+length:]

strObj = "This is a sample string"
pos = 6
length = 5

print("Original String => %s" % (strObj))
print("After Delete at pos %d and length %d => %s" % (pos, length, Deletestring(strObj, pos, length)))

输出:

Original String => This is a sample string
After Delete at pos 6 and length 5 => This iample string

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM