• python面试题(二)字符串常用函数


    今天在微信的公众号上看到了一遍python学习开发的文章,里面有一些python的面试题,碰巧最近python不知道学什么了,索性学一下这篇文章啊!!先写一下一些字符串的常用函数。(ps:本人太菜,若有错误的地方欢迎大佬随时责骂。。xixixii)

    0x01:格式化字符串

    格式化字符串可以很好的帮助我们把我们想要的输出出来,用起来也很方便,主要有下面几种形式。

    #格式化字符串
    print('hello,{0} {1} {2}'.format('zhong', 'yuan', 'gong'))      #通过位置格式化
    print('hello,{name},my name is {self}!!'.format(name='tom', self='sir'))     #通过key填充
    l=['tom', 'sir']
    print('hello,{l[0]},my name is {l[1]}!!'.format(l=l))       #通过数组的下标填充
    m={'name': 'tom', 'self': 'sir'}
    print('hello,{m[name]},my name is {m[self]}!!'.format(m=m))    #通过字典的key填充,键名不加引号
    

    上面输出结果都是:hello,tom,my name is sir!!

    0x02:字符串大小写问题

    关于英文字符串的大小写转换问题,可以通过下面几个函数实现

    #首字母大写
    a = 'hello,zHong yUan GoNg!!'
    print(a.title())
    #全部大写
    print(a.upper())
    #全部小写
    print(a.lower())
    #首个单词的首字母大写
    print(a.capitalize())
    

     输出结果一次为:

    Hello,Zhong Yuan Gong!!
    HELLO,ZHONG YUAN GONG!!
    hello,zhong yuan gong!!
    Hello,zhong yuan gong!!

    0x03:字符串切片

    d = '123456789'
    #获取第3到6个字符      
    print(d[2:6])    #这里输入的是字符串的下标,python中切片时,含前不含后,就如这里输出的是下标2-5的子字符串,而不是下标2-6的子字符串。
    #获取最后2个字符
    print(d[-2:])
    #对字符串进行反转
    print(d[::-1])
    

     输出结果如下:

    3456
    89
    987654321

    0x04:删除字符串中的空格

    c = '   hello world !!!     '
    #去掉字符串开头和末尾的空格
    print(c.strip())
    #去掉字符串左边的空格
    print(c.lstrip())
    #去掉字符串右边的空格
    print(c.rstrip())
    #去掉字符串中所有的空格
    print(c.replace(' ',''))
    

    输出依次为:

    hello world !!!
    hello world !!!     
       hello world !!!
    helloworld!!!

    注意:这里不要把strip函数和split函数搞混了,前者是删除字符串中指定的字符,默认为空格,后者是用指定的字符分割字符串,默认也是空格

    0x05:更改字符串的编码

    有时候我们在进行文件存储是,会出现乱码,这时候,我们改一下编码就OK了。方式如下

    #转换字符串编码
    e='hello,zhongyuan university,你很好!'
    print(e.encode('utf-8'))
    
  • 相关阅读:
    HDU 3757 Evacuation Plan DP
    UVa 1473
    LA 6047 Perfect Matching 字符串哈希
    HDU 3038 How Many Answers Are Wrong 并查集带权路径压缩
    专业程序员必知必会技巧:驯服复杂代码
    OpenCV、OpenCL、OpenGL、OpenPCL
    关于dlg和pro的问题
    关于编译PCL1.71
    VS2010编译错误:fatal error C1189: #error : This file requires _WIN32_WINNT to be #defined at least to 0x
    AI:从游戏引擎--到AI
  • 原文地址:https://www.cnblogs.com/liangshian/p/11031941.html
Copyright © 2020-2023  润新知