• Python零碎知识(1):strip lstrip rstrip使用方法


    转载:http://www.cnblogs.com/BeginMan/archive/2013/03/14/2958985.html

    一、原理介绍:

    Python中的strip用于去除字符串的首尾字符,同理,lstrip用于去除左边的字符,rstrip用于去除右边的字符。
    
    这三个函数都可传入一个参数,指定要去除的首尾字符。
    
    需要注意的是,传入的是一个字符数组,编译器去除两端所有相应的字符,直到没有匹配的字符,比如:
    
    theString = 'saaaay yes no yaaaass'
    print theString.strip('say')
    theString依次被去除首尾在['s','a','y']数组内的字符,直到字符在不数组内。所以,输出的结果为: 
    yes no 
    比较简单吧,lstrip和rstrip原理是一样的。
    
    注意:当没有传入参数时,是默认去除首尾空格的。 
    
    theString = 'saaaay yes no yaaaass'
    print theString.strip('say') 
    print theString.strip('say ') #say后面有空格 
    print theString.lstrip('say') 
    print theString.rstrip('say') 
    运行结果: 
    
    yes no 
    es no 
    yes no yaaaass 
    saaaay yes no
    注:这段解释来自:(pylemon's notebook):http://www.cnblogs.com/pylemon/archive/2011/05/18/2050179.html

     二、实际应用

    这里举一个demo,用于在pythonIED中控制输出菜单,选择相应的选项,操作对应的操作。如下:
    假设程序中已经存在newUser和oldUser两个函数,这里我只贴出了主要部分

     1 #菜单控制界面
     2 def showmenu():
     3     prompt='''   
     4     *************************
     5     Welcome to Python System!
     6     -------------------------                                     
     7     |(N)ew User Login        |
     8     |(L)ogin your system     |
     9     |(Q)uit                  |
    10     -------------------------
    11     Enter Choice:
    12     **************************
    13     '''
    14     done=False
    15     while not done:
    16         chosen=False
    17         while not chosen:
    18             try:
    19                 choice=raw_input(prompt).strip()[0].lower() #取输入的字符串第一个字符
    20             except(EOFError,KeyboardInterrupt):
    21                 choice='q'                                  #抛出异常
    22             print '
     You picked:[%s]' %choice
    23             if choice not in 'nlq':                         #判断输出字符串中首字符是否属于'nlq'
    24                 print 'Invalid option,tyr again'
    25             else:
    26                 chosen=True                                 #一切正常则跳出循环
    27         #根据输入信息进行控制
    28         if choice=='q':done=True                            #如果输入'q'则跳出整个循环,不再执行
    29         if choice=='n':newUser()                            #如果输入'n'则调用用户注册函数
    30         if choice=='l':oldUser()                            #如果输入'l'则调用用户登陆函数
    31 
    32 #主程序
    33 if __name__=="__main__":
    34     showmenu()
  • 相关阅读:
    Windows身份验证和混合验证的差别
    Codeforces Round #273 (Div. 2) --B Random Teams
    带输出參数的存储过程的定义,以及在aso.net中调用
    数字统计
    UVa10048_Audiophobia(最短路/floyd)(小白书图论专题)
    C语言之基本算法21—可逆素数
    我在CSDN开通博客啦!
    小谈并查集及其算法实现
    C#高级编程五十四天----Lookup类和有序字典
    开发人员调试工具Chrome Workspace
  • 原文地址:https://www.cnblogs.com/sunshishi/p/4763467.html
Copyright © 2020-2023  润新知