一、过滤字符串
1、strip()
(1)去掉行收尾不可见字符
a = ' wejifrow '
print a
print a.strip()
结果:
wejifrow
wejifrow
(2)strip([chars])
a = '**weji**frow**'
print a.strip('*')
结果:
weji**frow
(3)lstrip([chars]) rstrip([chars])
s='* dwiefi **'
print s.lstrip('*')
print s.rstrip('*')
结果:
dwiefi **
* dwiefi
 
str1=r'\n\t andwf\n\t '
print str1
print str1.strip()
print str1.strip('\tf\n ')
结果:
\n\t andwf\n\t
\n\t andwf\n\t
\n\t andwf\n\t
 
二、大小写互换
1、ASCII值来换 ord chr
2、
s1.lower() 大写转换为小写
s2.upper() 小写转换成大写
s3.swapcase() 大小写互换
3、
句子的第一个单词的首字母转换为大写 s4.capitalize()
句子的所有单词首字母都需要大写(模块方法):
import string
string.capwords(s5)
或者s5.title()
 
4、string模块
import string
string.uppercase
string.lowercase
 
三、字符串对齐
1、s.ljust(width,[fillchar]) 左对齐
s.rjust(width) 右对齐
width定义长度
fillchar:使用什么字符来补齐
s='123abc'
print s.ljust(10,'*')
结果:123abc****
 
print 'lilili'.ljust(15),'female'.ljust(10),'23'.ljust(5),'zhouzhou'.ljust(15)
与print '%-15s %-10s %-5s %-15s'%('lili','女','23','zhouzhou')效果一样
2、中间对齐 s.centerwidth,[fillchar])
print s.center(15,'*')
结果:*****123abc****
 
3、s.zfill(width)
s.zfill(10) ==s.rjust(10,'0')
结果:0000123abc
 
四、搜索
1、s.find(substr,[start,[end]])
substr在s字符中出现的第一个的下标
start end:从s字符串的下标为start的位置开始,下标为end-1的位置结束
没有找到 返回 -1
 
2、s.index(substr,[start,[end]])
说明:[start,[end]] 有end的情况,必须有start
find与index方法的区别:
find:返回-1
index:如果没有找到,会抛出异常:ValueError: substring not found
使用会抛异常的 做异常分支处理 (APP崩溃经常是没有捕获这类异常引起的)
try:
pass
except:
 
3、s.rfind(subStr,[start[,end]])
从字符串的右侧进行查找
s='boy boy'
print s.find('boy')
print s.rfind('boy')
结果:
0
4
 
4、s.rindex(subStr,[start[,end]])
s='boy boy'
print s.rindex('boy')
结果:
4
 
五、字符串替换
1、s.replace(oldStr,newStr,[count])
使用newStr替换oldStr。
count:替换多少次
没有返回值,需要s=s.replace()
 
2、s.expandtabs([tabsize])
把制表符替换成空格
tabsize:默认一个tab键替换为8个空格, 把一个tab键替换成tabsize个空格
 
六、字符串切割
1、s.split([sep[,maxsplit]])
sep:以s字符串中的seq字符串来分隔
maxsplit:从左往右分隔的次数
 
2、s.splitlines([keepends])
分隔行,以换行符(\n)
keepends=true,保留换行符。默认值为False
 
3、s.rsplit([sep[,maxsplit]])从字符串右侧开始切割
 
七、列表转换为字符串
1、s.join()由字符串组成的列表拼接成字符串
 
2、s.startwith(subStr)
字符串s是否以subStr子串开头,返回值 true or false
s.endswith(subStr)
字符串s是否以subStr子串结尾,返回值 true or false
 
3、s1 in s
判断s1子串是否在字符串s中
 
八、判断字符串
1、s.isalpha()
s字符串是否都是有字母组成,并且至少由一个字符组成
 
2、s.isalnum()
s字符串是由字母或者数字组成,并且至少由一个字符组成
 
3、s.isdigit()
s字符串中的字符都是由数字组成的,并且至少由一个字符组成
‘12.23’.isdigit() 结果是FALSE
 
4、s.isspace()
判断s字符串是否由空格组成,并且至少由一个字符组成
只要是空白的,就认为是空格
 
5、s.islower()
判断字符串s中的字母(可以包含其他的字符)是否都是小写,并且至少有一个字母
TRUE or Flase
‘a1’.islower() 结果为True
 
6、s.isupper()
判断字符串s中的字母(可以包含其他的字符)是否都是大写,并且至少有一个字母
 
7、s.istitle()
判断字符串s中的所有单词的首字母是大写,其他字母为小写,并且至少有一个字母
 
8、
import string
string.maketrans(from,to)
映射表,做编码和解码的时候使用
例如:
mapTable=string.maketrans(‘123’,‘abc’)
s='111abc123abc‘
print s.translate(mapTable)
结果:
aaaabcabcabc
 
九、数字类型的转换
int()
float()
long()
import string
1、string.atoi(s,a) 还可以转换八进制,十六进制
a:代表的是进制数
s='18'
print int(s)
print string.atoi(s)
结果:
18
18
print string.atoi('011',8) 9
print string.atoi('0x11',16) 17
 
2、string.atol('11') 11
3、string.atof('1.23456') 1.23456
 
十、
1、ord() 字母转换为对应的ASCII值
2、chr() 把数字转换成对应的字符
3、
s.encode([encoding[,errors]]) 编码函数 把Unicode编码为需要的
encoding:编码的类型
errors:默认值’strict‘。ignore(忽略)
s.decode() 解码函数 解码为Unicode格式
 
 

Python之数据结构:字符串中的方法的更多相关文章

  1. Python关于去除字符串中空格的方法

    Python关于去除字符串中空格的方法 在编写程序时我们经常会遇到需要将字符串中的空格去掉的情况,通常我们可以使用下面几种解决方法: 1.strip()方法:该方法只能把字符串头和尾的空格去掉,但是不 ...

  2. Python如何判断字符串中是否有中文

    解决:Python如何判断字符串中是否有中文 In [240]: s Out[240]: '你好aa' In [241]: for i in s: ...: if u'\u4e00' <= i ...

  3. (python)数据结构---字符串

    一.概述 由一个个字符组成的有序序列. 使用单引号.双引号.三引号引住的字符序列. 不可变.线性的数据结构. 二.字符串的相关操作 1.元素访问----下标 字符串是线性的数据结构,可以使用索引去访问 ...

  4. python的str()字符串类型的方法详解

    字符串一旦创建,不可修改,一旦修改或者拼接,都会造成重新生成字符串,因为内存存数据是一个挨着一个存的,如果增加一个字符串的话,之前的老位置只有一个地方,不够,这是原理性的东西,在其他语言里面也一样 7 ...

  5. Python:删除字符串中的字符

    一.删除字符串两端的一种或多种字符 #strip().lstrip().rstrip()方法:(默认删除空格符) A.list.strip(字符):删除字符串两端的一种或多种字符: #例:删除字符串s ...

  6. Python判断一个字符串中是否存在多个子串中的一个

    在使用python的开发过程中,常常需要判断,字符串中是否存在子串的问题, 但判断一个字符串中是否存在多个字串中的一个时,如if (a or b) in c或者if x contains a|b|c| ...

  7. python,如何获取字符串中的子字符串,部分字符串

    说明: 比如有一个字符串,python,如何就获取前3位,或者后2位.在此记录下. 操作过程: 1.通过分割符的方式,下标的方式,获取字符串中的子串 >>> text = 'pyth ...

  8. python之统计字符串中字母出现次数

    dic=dict() d={} s=set() s='helloworld' (1)d=dict() for x in s: if x not in d.keys(): d[x]=1 else: d[ ...

  9. python:过滤字符串中的字母数字特殊符号

    今天遇到的字符串处理的问题,记录一下方便使用 str1 = input('请输入一个字符:') #初始化字符.数字.空格.特殊字符的计数 lowercase = 0 uppercase = 0 num ...

随机推荐

  1. 网络编程——UDP协议和通信

    第1章 UDP与TCP协议 在介绍TCP/IP结构时,提到传输层的两个重要的高级协议,分别是UDP和TCP,其中UDP是User Datagram Protocol的简称,称为用户数据报协议,TCP是 ...

  2. python换行

    python中如果一行代码太长,看着不方便时,怎么办? 只需要在需要换行的地方添加上符号 \ 就行了.

  3. java基础面试题:java中有没有goto? 在JAVA中如何跳出当前的多重嵌套循环?

    goto是Java的保留关键字,但是从来没有直接使用到goto,goto的跳转作用在Java中受到了限制,只有在特定场合下才能使用,如while for等循环中用continue.break或结合标签 ...

  4. 2018.11.7 Nescafe29 T1 穿越七色虹

    题目 题目背景 在 Nescafe27 和 28 中,讲述了一支探险队前往 Nescafe 之塔探险的故事…… 当两位探险队员以最快的时间把礼物放到每个木箱里之后,精灵们变身为一缕缕金带似的光,簇簇光 ...

  5. mysql基础,DISTINCT关键字

  6. cmf5分页相关

    //分页配置在app/config.php 'paginate' => [ 'type' => '\cmf\paginator\Bootstrap', 'var_page' => ' ...

  7. Python中的正则

    regex_lst = [ ('字符组',), ('非打印字符',), ('特殊字符',), ('定位符',), ('限定符',), ('re模块',), ('分组命名',), ('或匹配',), ( ...

  8. 算法图解之大O表示法

    什么是大O表示法 大O表示法可以告诉我们算法的快慢. 大O比较的是操作数,它指出了算法运行时间的增速. O(n) 括号里的是操作数. 举例 画一个16个格子的网格,下面分别列举几种不同的画法,并用大O ...

  9. Neon Lights in Hong Kong【香港霓虹灯】

    Neon Lights in Hong Kong Neon is to Hong Kong as red phone booths are to London and fog is to San Fr ...

  10. Python中str、list、numpy分片操作

    在Python里,像字符串(str).列表(list).元组(tupple)和这类序列类型都支持切片操作 对对象切片,s是一个字符串,可以通过类似数组索引的方式获取字符串中的字符,同时也可以用s[a: ...