• python 字符串操作


    1. 字符串连接

    # join
    a = ['a','b','c','d']
    content = ''.join(a)  # 'abcd'
    
    # 替换占位符
    test_str = 'Hello %s! Welcome to %s'%('Tom', 'our home')
    
    # tuple 
    content = '%s%s%s%s'%tuple(a) # abcd
    
    # format
    test_str = 'Hello %(name)s! Welcome to %(addr)s'
    d = {'name':'Tom', 'addr':'our home'}
    test_str % d
    
    test_str = 'Hello {name}! Welcome to {addr} {0}'
    test_str.format('^^', name='Tom', addr='our home')

    2. 字符串替换

    a = 'hello word'
    b = a.replace('word','python')
    print b # hello python
    
    import re
    a = 'hello word'
    strinfo = re.compile('word')
    b = strinfo.sub('python',a)
    print b # hello python

    3. 字符串反转

    a = 'abcd'
    b = a[::-1]##[::-1]通过步进反转
    print b
    
    b = list(a)
    b.reverse()
    ''.join(b)

    4. 编码

    a = '你好'
    b = 'python'
    print a.decode('utf-8').encode('gbk')##decode方法把字符串转换为unicode对象,然后通过encode方法转换为指定的编码字符串对象
    print b.decode('utf-8')##decode方法把字符串转换为unicode对象

    5. 拆分

    a='hello world'
    b = a.split() # ['hello', 'world']

     6. 格式化

    • %s    字符串 (采用str()的显示)
    • %r    字符串 (采用repr()的显示)
    • %c    单个字符
    • %b    二进制整数
    • %d    十进制整数
    • %i    十进制整数
    • %o    八进制整数
    • %x    十六进制整数
    • %e    指数 (基底写为e)
    • %E    指数 (基底写为E)
    • %f    浮点数
    • %F    浮点数,与上相同
    • %g    指数(e)或浮点数 (根据显示长度)

    可以用如下的方式,对格式进行进一步的控制:

    %[(name)][flags][width].[precision]typecode

    (name)为命名

    flags可以有+,-,' '或0。+表示右对齐。-表示左对齐。' '为一个空格,表示在正数的左侧填充一个空格,从而与负数对齐。0表示使用0填充。

    width表示显示宽度

    precision表示小数点后精度

    比如:

    print("%+10x" % 10)
    print("%04d" % 5)
    print("%6.3f" % 2.3)
    上面的width, precision为两个整数。我们可以利用*,来动态代入这两个量。比如:
    print("%.*f" % (4, 1.2))

    Python实际上用4来替换*。所以实际的模板为"%.4f"。

  • 相关阅读:
    省常中模拟 Test4
    省常中模拟 Test3 Day1
    省常中模拟 Test3 Day2
    省常中模拟 Test1 Day1
    树型动态规划练习总结
    noip2010提高组题解
    noip2003提高组题解
    noip2009提高组题解
    noip2004提高组题解
    noip2002提高组题解
  • 原文地址:https://www.cnblogs.com/snow-backup/p/5069916.html
Copyright © 2020-2023  润新知