zoukankan      html  css  js  c++  java
  • python中字符串的几个方法介绍

    字符串格式化

    >>> '%s plus %s equals %s' % (1,1,2)
    '1 plus 1 equals 2'

    字段的宽度和精度

    *字段宽度是转换后的值所保留的最小字符个数,精度(对于数字)是包含的小数位数,或者(对于字符)转换后的值所能包含的最大字符数

    >>> from math import pi
    >>> '%10f' % pi
    '  3.141593'
    >>> from math import pi
    >>> '%10f' % pi  #字段宽10
    '  3.141593'
    >>> '%10.2f' % pi #字段宽10,精度2
    '      3.14'
    >>> '%.2f' % pi #精度2
    '3.14'
    >>> '%.5s' % 'My name is ningsi'
    'My na'
    >>> '%.*s' % (5,'My name is ningsi')
    'My na'

    符号、对齐和0填充

    >>> '%010.2f' % pi #用0填充
    '0000003.14'    
    >>> '%-10.2f' % pi #左对齐
    '3.14      '
    >>> print ('% 5d' % 10)+'
    '+('%5d' % -10)
       10
      -10
    >>> print ('%+5d' % 10)+'
    '+('%+5d' % -10)
      +10
      -10

    字符串的方法

    find 查找子字符串

    >>> N='ning si de shu de'
    >>> N.find('de')
    8
    >>> N.find('dee')
    -1
    >>> N.find('de',9,16) #范围包含第一个索引不包含第二个
    -1

    join 是split方法的逆方法

    >>> s=['1','2','3','4']
    >>> q.join(s)
    '1+2+3+4'
    >>> p='','usr','bin','env'
    >>> '/'.join(p)
    '/usr/bin/env'>>> print 'C:'+'\'.join(p)
    C:usrinenv

    lower 返回字符串的小写字母版

    >>> 'My name is ningsideshu'.lower()
    'my name is ningsideshu'
    >>> if 'name' in ['my','Name','is']:print 'Found it!'
    
    >>> if 'my' in ['my','Name','is']:print 'Found it!'
    
    Found it!

    replace 替换

    >>> 'This is a pen'.replace('pen','apple')
    'This is a apple'

    split 将字符串分割成序列

    >>> '1+2+3+4+5'.split('+')
    ['1', '2', '3', '4', '5']
    >>> '/usr/bin/env'.split('/')
    ['', 'usr', 'bin', 'env']
    >>> 'Using the default'.split() #默认所有空格作为分隔符(空格、换行等)
    ['Using', 'the', 'default']

    strip 返回去除两侧空格(或指定字符)的字符串  (另外:lstrip,rstrip)

    >>> ' My name is Nsds  '.strip()
    'My name is Nsds'
    >>> ' *My name is Nsds * '.strip(' *')
    'My name is Nsds'

    translate 替换,与replace不同的是,可以替换单个字符(字符串中的某些部分)

    >>> from string import maketrans
    >>> N=maketrans('ns','mf')
    >>> 'My name is ningsideshu'.translate(N)
    'My mame if mimgfidefhu'
    >>> 'My name is ningsideshu'.translate(N,'M') #第二个参数指定需要删除的字符
    'y mame if mimgfidefhu'

    模版字符串 

    >>> from string import Template
    >>> s=Template('$x. name $x!')
    >>> s.substitute(x='hello')
    'hello. name hello!'
    >>> s=Template("It't ${x}tastic!")
    >>> s.substitute(x='slurm')
    "It't slurmtastic!"
    >>> s=Template("It't ${x}tastic${y}!")
    >>> s.substitute(x='slurm',y='a')
    "It't slurmtastica!"
    >>> s=Template('A $thing must never $action.') 
    >>> d={}
    >>> d['thing']='gentleman'
    >>> d['action']='show his socks'
    >>> s.substitute(d)
    'A gentleman must never show his socks.'
  • 相关阅读:
    TCP/UDP 协议,和 HTTP、FTP、SMTP,区别及应用场景
    ZeroMQ使用汇总
    C/C++ 笔试、面试题目大汇总
    Caffe+Windows 环境搭建收集
    轻松看懂机器学习十大常用算法
    Caffe学习系列——工具篇:神经网络模型结构可视化
    深度神经网络可视化工具集锦
    MIT一牛人对数学在机器学习中的作用给的评述
    A Full Hardware Guide to Deep Learning
    Caffe上手教程
  • 原文地址:https://www.cnblogs.com/nsds/p/6429249.html
Copyright © 2011-2022 走看看