python3 no.6 字符串的查找与替换

来源:互联网 发布:可以变魔术的软件 编辑:程序博客网 时间:2024/06/01 08:06
#!/usr/bin/env python3'''题目:创建三个函数: 函数1, 从指定字符串里从前面查找指定单个字符  函数2, 从指定字符串里从后面开始查找指定单个字符  函数3, 输入两个字符串(一个要替换的, 二个被替换的), 从指定字符串里面进行替换  (不能用string.*find()或string.*index函数和方法'''def showmenu():    welcome = '''        (s)tart find(e)nd find(r)ep find(q)uit'''    print(welcome)def findstart():    while True:        findstring = input('Input a string:')        if len(findstring) < 1:            print('Error input.)')        else:            break    print('stringdata: ', stringdata)    findstring = findstring[0]    print('findstart:', findstring)    if findstring in stringdata:        index_string = 1        for check in stringdata:            if findstring == check:                break            else:                index_string += 1        print('return:', index_string)    else:        print('return: None' )def findend():    while True:        findstring = input('Input a string:')        if len(findstring) < 1:            print('Error input.)')        else:            break    print('stringdata: ', stringdata)    findstring = findstring[0]    print('findend:', findstring)    if findstring in stringdata:        index_string = -1        for i in range(1, len(stringdata)+1):            if findstring == stringdata[-i]:                break            else:                index_string -= 1        print('return:', index_string)    else:        print('return: None' )    def repfind():#全部替换    global stringdata    #引入全局变量, 进行必要修改    print('database_string: ', stringdata)    repstring = input('Input two string(A rep to B):').strip()    repstring = repstring.split()    if len(repstring) == 2:    #先分割, 再连接split-->join, 用指定字符分割, 再用指定字符连接        newstringdata = stringdata.split(repstring[0])        stringdata = repstring[1].join(newstringdata)        print('now the new stringdata: ', stringdata)    else:        print('Error, you must input two string.')#if __name__ == '__main__':#    showmenu()cmd = {'s':findstart, 'e':findend, 'r':repfind}stringdata = input('Input stringdatabase:')while True:    showmenu()    try:        choose = (input('Input you choose:')).strip()[0].lower()    except:        print('Error, continue.')        continue    if choose in 'ser':        cmd[choose]()    else:        if choose == 'q':            print('Bye')            break        else:            print('You input error.')            input()

0 0
原创粉丝点击