-->

Python字符串

  • 常见字符串常量和表达式
  • s=' '空字符串
    s="abc'dec"单引号和双引号相同
    s='a\tb\nc'转译序列
    s="""..."""三重引号字符串块
    s=r'C:\abc\def.txt'Raw字符串
    s=b'spam'Python3.0中的字节字符串
    s1 + s2合并
    s * 3重复
    s[ i ]索引
    s[ i : j ]分片
    len(s)求长度
    "a %s parrot" % kind字符串格式化表达式
    "{0} {1} parrot".format(a,kind)字符串格式化方法
    s.find('pa')搜索
    s.rstrip()移除空格
    s.replace('aa','bb')替换
    s.split(',')用展位符分割
    s.isdigit内容测试
    s.lower()短信息转换
    s.endswith('spam')结束测试
    'spam'.join(strlist)插入分隔符
    s.encode('latin-1')Unicode编码等
    for x in s:print(x)迭代,成员关系
    'spam'in s
    [c*2 for c in s]
    map(ord,s)
  • 转译序列
  • \\反斜杠
    \'单引号
    \"双引号
    \a响铃
    \b倒退
    \f换页
    \n换行
    \r返回
    \t水平制表符
    \v垂直制表符
    \N{id}Unicode数据库ID
    \uhhhhUnicode 16位的十六进制值
    \uhhhhhhhhUnicode 32位的十六进制值
    \xhh十六进制
    \ooo八进制
    \0Null(不是结束字符串)
  • Raw字符串表示禁用转译序列
  • 三重引号用来编写一段文字,里面可以换行、空格等等文档编写
    有时可以用来当注释
  • s[ i ] 表示获取第 i 个字符,可以为负数,表示从后开始数
  • s[ i : j ] 表示切割出第 i 个到第 j 个字符之间的字符串,可以省略 i 或者 j 表示默认为头或尾,j可以为负数
  • s[ i : j : k ] 为特别的分片,k 表示 k 个之后再分片一次,k 可以为负数
    当 k 为负数时,两个边界反转,也就是 i 和 j 呼唤
    另外s[ : : -1]表示把 s 反转
  • int( )、str( )、float( ) 用来进行类型转换
    ord(' ') 字符转ASCII chr( ) ASCII转字符
  • 字符串不可修改单独一个字符,但是可以通过合并、分片、索引进行修改
    或者通过 s.replace('aa' , 'bb') 来修改,用 bb 替换 s 中的 aa
  • "%d %s parrot" % ( 1 , 'kind' )
    "{0} {1} parrot".format( 1 , 'kind' )
    用来向字符串中加入变量
  • 字符串方法
    s.replace('aa' , 'bb') 用来修改字符串
    s.replace('aa' , 'bb' , k) 当字符串中有多个aa时,只修改 k 个
    s.find('aa') 可以查找 aa 所在位置,从前向后搜索,只显示第一个的位置
    L=list(s) 表示把s转为列表,之后可以修改单个字符,再用 s=''.join(L)合并
    join 的意思是把''里的内容插入列表各字符见,上面用的''为空
    s.spilt( ) 是以括号内的字符为标准分割 s 为列表
    s.rstrip() 是移除空格
    s.upper() 是转大写
    s.lower() 是转小写
    s.startswith('aa') 测试时候为 aa
    s.endswith('aa') 测试结尾时候为 aa
  • 字符串格式化代码
  • s字符串(或任何对象)
    rs,但使用repr,而不是str
    c字符
    d十进制(整数)
    i整数
    u无号(整数)
    o八进制整数
    x十六进制整数
    Xx,但大写打印
    e浮点指数
    Ee,但打印大写
    f浮点十进制
    Ff,但打印大写
    g浮点e或f
    G浮点E或F
    %常量%
  • 最对齐:-
    正负号:+
    补零:0
    小数点位数:.2
    从下一个项获取值:*,意思是值为下一个,这一个为属性值,例如
    >>>' %.*f ' % ( 4 , 1/3 )
    0.3333
  • 用字典进行字符串格式化
    a={ 'b' : 'bb' , 'c' : 'cc' }
    '%(b) s %(c) s'%a
  • 另一种格式化方法,format
    >>>a='{0} {1} {2}'
    a.format('a' , 'b' , 'c')
     {}内的顺序可以颠倒,并且可以具体表示,用 : 表示,比如{0:10}、{0:>5}
    数字表示n字符宽、< 左对齐、> 右对齐、^ 居中
    也可以使用上面的 e 、f 、g 、0.2等规则
    或者
    >>>a='{a} {b} {c}'
    a.format( a='a' , b='b' , c='c')
  • 内置format
    >>>format( 1.2345 , ' .2f ' )
    1.23