Python之字符串

1.1 一个个字符组成的有序的序列,是字符的集合 

1.2.使用单引号、双引号、三引号引住的字符序列

1.3.字符串是不可变对象

1.4.Python3起,字符串就是Unicode类型

2字符串元素访问

2.1字符串支持使用索引访问

sql = "select * from user where name='tom'" 
sql[4] # 字符串'c' 
sql[4] = 'o'

2.2有序的字符集合,字符序列

for c in sql: 
    print(c) 
    print(type(c))

output
<class 'str'>

2.3可迭代

lst = list(sql)

3.字符串join连接 & +

"string".join(iterable) -> str
将可迭代对象连接起来,使用string作为分隔符
可迭代对象本身元素都是字符串
返回一个新字符串
+ -> str 
将2个字符串连接在一起 
返回一个新字符串

4.字符串分割split

split(sep=None, maxsplit=-1) -> list of strings
  1.从左至右
  2.sep 指定分割字符串,缺省的情况下空白字符串作为分隔符
  3.maxsplit 指定分割的次数,-1 表示遍历整个字符串 

rsplit(sep=None, maxsplit=-1) -> list of strings
  1.从右向左
  2.sep 指定分割字符串,缺省的情况下空白字符串作为分隔符
  3.maxsplit 指定分割的次数,-1 表示遍历整个字符串

partition(sep) -> (head, sep, tail)   1.从左至右,遇到分隔符就把字符串分割成两部分,返回头、分隔符、尾三部分的三元组;
   如果 没有找到分隔符,就返回头、2个空元素的三元组   2.sep 分割字符串,必须指定

5.字符串修改

replace(old, new[, count]) -> str
字符串中找到匹配替换为新子串,返回新字符串
count表示替换几次,不指定就是全部替换 
strip([chars]) -> str 
    1.从字符串两端去除指定的字符集chars中的所有字符
    2.如果chars没有指定,去除两端的空白字符
find(sub[, start[, end]]) -> int p 
    1.在指定的区间[start, end),从左至右,查找子串sub。找到返回索引,没找到返回-1
rfind(sub[, start[, end]]) -> int p 
    1.在指定的区间[start, end),从右至左,查找子串sub。找到返回索引,没找到返回-1 

 6.format字符串格式化

format函数格式字符串语法
"{} {xxx}".format(*args, **kwargs) -> str 
args是位置参数,是一个元组 p kwargs是关键字参数,是一个字典
花括号表示占位符 p {}表示按照顺序匹配位置参数,{n}表示取位置参数索引为n的值
{xxx}表示在关键字参数中搜索名称一致的
{{}} 表示打印花括

  

1.位置参数 
"{}:{}".format('192.168.1.100',8888),这就是按照位置顺序用位置参数替换前面的格式字符串的占位符中 
2.关键字参数或命名参数
"{server} {1}:{0}".format(8888, '192.168.1.100', server='Web Server Info : ') ,位置参数按照序号匹配, 关键字参数按照名词匹配
3.通过列表或者tuple访问元素
 "{0[0]}.{0[1]}".format(('magedu','com')) 
4.字符串格式化
<:向左对齐
>:向右对齐
>0n:字符数不够,前面使用0补齐
'{0}*{1}={2:<2}'.format(3,2,2*3) 
'{0}*{1}={2:<02}'.format(3,2,2*3) 
'{0}*{1}={2:>02}'.format(3,2,2*3) 
'{:^30}'.format('centered') 
'{:*^30}'.format('centered')

 

posted @ 2018-03-28 17:26  亚洲哈登  阅读(178)  评论(0编辑  收藏  举报