Python基础(str类)

二、字符串(str类)

提示:以下所有方法都是类中的方法,第一个参数都是self,统一都没有写出。

包含的方法有:

1、capitalize()     #首字母变大写

>>> name=‘hello world‘

>>> name.capitalize()

‘Hello world‘

2、center(width, fillchar=None)#内容居中,width:总长度;fillchar:空白处填充内容,默认无

>>> name=‘hello world‘

>>> name.center(20,‘#‘)

‘####hello world#####‘

3、count(x,start=None, end=None)#子序列x的个数参数可以接开始和结束位置

>>> name=‘abcdd‘

>>> name.count(‘d‘,0,9)

2

>>> name.count(‘d‘,0,3)

0

>>> name.count(‘d‘,0,4)

1

4、find(x,start=None, end=None)#查找子序列x的位置,如果没有找到则返回-1

>>> name=‘abcd‘

>>> name.find(‘a‘)

0

>>> name.find(‘d‘)

3

>>> name.find(‘e‘)

-1

5、index(x,start=None, end=None)#查找子序列x的位置,如果没有找到则异常

>>> name.index(‘a‘)

0

>>> name.index(‘d‘)

3

>>> name.index(‘e‘)

Traceback (most recent call last):

File "<stdin>", line 1, in <module>

ValueError: substring not found

6、endswith(x)#是否以x结束

>>> name=‘abcd‘

>>> name.endswith(‘a‘)

False

>>> name.endswith(‘d‘)

True

7、startswith(x)#是否以x开始

>>> name=‘abcd‘

>>> name.startswith(‘a‘)

True

>>> name.startswith(‘d‘)

False

8、expandtabs(tabsize=None)#将tab转换成空格,默认一个tab转换成8个空格

>>> name=‘ab    cd‘

>>> name.expandtabs(4)

‘ab  cd‘

9、format()#字符串格式化,4种方式

9-1:

str1=‘I am {0}, age {1}‘

str1.format(‘alex‘,24)

9-2:

str2=‘I am {ss}, age {dd}‘

str2.format(ss=‘alex‘,dd=24)#类似于函数的形参

9-3:

li=[‘alex‘,24]

str3=‘I am {0}, age {1}‘

str3.format(*li)#列表的元素个数必须和需要的参数相等

9-4:

dic={‘ss‘:alex,‘dd‘:24}

str4=‘I am {ss}, age {dd}‘

str4.format(**dic)#字典的key必须和形参的名称一致

10、isalnum()#是否是字母和数字

>>> name=‘abcd‘

>>> name.isalnum()

True

11、isalpha()#是否是字母

>>> name=‘abcd‘

>>> name.isalpha()

True

12、isdigit()#是否是数字

>>> name=‘abcd‘

>>> name.isdigit()

False

13、islower()#是否小写lower() 是把字符串中的大写变为小写

>>> name=‘abcd‘

>>> name.islower()

True

>>> name=‘Abcd‘

>>> name.islower()

False

14、isupper()#是否是大写upper() 是把字符串中的小写变为大写

>>> name=‘abcd‘

>>> name.isupper()

False

>>> name=‘ABCD‘

>>> name.isupper()

True

15、istitle()#是否是标题title() 是把字符串设置为标题,也就是每个单词的首字母大写

>>> name=‘hello world‘

>>> name.istitle()

False

16、isspace()#是否是空格

>>> name=‘ ‘

>>> name.isspace()

True

17、join()#连接返回的是一个字符串,与之相反的是split

>>> name=‘abcd‘

>>> ‘_‘.join(name)

‘a_b_c_d‘

>>> name=[‘a‘,‘b‘,‘c‘,‘d‘]

>>> ‘_‘.join(name)

‘a_b_c_d‘

18、split(sep,maxsplit=None)#分割,maxsplit最多分割几次,默认是全分割,返回的值是一个列表

>>> name=‘a,b,c,d‘

>>> name.split(‘,‘)#全分割

[‘a‘, ‘b‘, ‘c‘, ‘d‘]

>>> name.split(‘,‘,2)#只分割前两个字符串

[‘a‘, ‘b‘, ‘c,d‘]

19、ljust(width, fillchar=None)#内容左对齐,width为宽度,右侧填充指定字符,fillchar默认为空rjust() 是右对齐,语法格式一样

>>> name=‘abcd‘

>>> name.ljust(20,‘#‘)

‘abcd################

20、lstrip()#移除左侧空白rstrip() 移除右侧空白strip() 移除两侧空白

>>> name=‘  abcd   ‘

>>> name.lstrip()

‘abcd   ‘

>>> name.rstrip()

‘  abcd‘

>>> name.strip()

‘abcd‘

21、partition(sep)#以sep为分割点 分割,前,中,后三部分

>>> name=‘abc‘

>>> name.partition(‘b‘)

(‘a‘, ‘b‘, ‘c‘)

22、replace(old,new,count=None)#替换,count参数是指定替换个数,默认是全部替换

>>> name=‘abcd‘

>>> name.replace(‘a‘,‘e‘)

‘ebcd‘

>>> name=‘1122334444‘

>>> name.replace(‘4‘,‘5‘,2)#替换2个4

‘1122335544‘

>>> name.replace(‘4‘,‘5‘,3)#替换3个4

‘1122335554

23、swapcase()#大写变小写,小写变大写

>>> name=‘ABcd‘

>>> name.swapcase()

‘abCD‘

24、translate(table, deletechars=None)#字符转换,需要先做一个对应表table,deletechars默认是空,若指定了一个字符,则被指定的字符将会被删除

import string

intab = "aeiou"

outtab = "12345"

trantab = string.maketrans(intab, outtab)

str1 = "this is string example....wow!!!"

print str.translate(trantab, ‘xm‘)#str1中的含有转换表中的字符都会被转换,x和m字符将会被删除。

输出结果:th3s 3s str3ng 21pl2....w4w!!!

下一篇

列表(list类)

时间: 2024-10-26 04:48:43

Python基础(str类)的相关文章

python基础--str.split

string = 'This +is -a /string' process = string.split('-') process1 = string.split('-')[-1]#-1和-2可能存在某种特殊意义,小于-2或者大于1就超出list大小来 process2 = string.split('-')[0] process3 = string.split('-')[1] process4 = string.split('-')[-2]# print(process) print(pro

Python基础(十一) 类继承

类继承: 继承的想法在于,充份利用已有类的功能,在其基础上来扩展来定义新的类. Parent Class(父类) 与 Child Class(子类): 被继承的类称为父类,继承的类称为子类,一个父类,可以有多个子类: 子类,一旦继承父类,就拥有了父类的属性与方法,根据需要可以进行增删改. 这种做法的主要好处之一就是代码重用. 示例代码1: #*_*coding:utf-8*_* class perent_class(object): def __init__(self,name): self.n

python基础===新式类与经典类

首先: Python 2.x中默认都是经典类,只有显式继承了object才是新式类 Python 3.x中默认都是新式类,不必显式的继承object 这两种类的区别: 新式类重定义的方法更多,当然这不是重点,重点是两种类在多继承状态下查找"方法"的规则不同. 经典类: 深度查找 显示类:广度查找 其次: ------新式类对象可以直接通过__class__属性获取自身类型:type ------继承搜索的顺序发生了改变,经典类多继承属性搜索顺序: 先深入继承树左侧,再返回,开始找右侧;

Python基础20_类的约束,异常处理,MD5加密,日志

一. 类的约束 约束程序的结构, 在分配任务之前就应该把功能定义好, 然后分别交给底下的程序员来完成相应的功能 在python中有两种办法来解决这样的问题 1. 提取父类, 然后在父类中定义好方法, 在方法中抛出一个异常, 这样所有继承父类的子类都必须重写这个方法, 否则访问的时候就会报错 class Base: def login(self): raise NotImplementedError   # 没有被实现错误, 要求子类必须重写login方法 , 不然抛出异常 class User(

Python基础13_类与类型, MRO, C3算法, super()

一. python多继承 类与类型:http://www.cnblogs.com/blackmatrix/p/5594109.html 子类继承了多个父类, 当父类出现了重名方法时, 这时就涉及到查找父类方法的问题, 即MRO(method resolution order)问题 python中有两种类, 经典类和新式类 在Python2及以前的版本中,由任意内置类型派生出的类(只要一个内置类型位于类树的某个位置),都属于"新式类",都会获得所有"新式类"的特性:反

python基础(str,list,tuple)

python是一门动态解释型的强类型定义语言(先编译后解释) 动态类型语言 动态类型的语言编程时,永远也不用给任何变量指定数据类型,该语言会在你第一次赋值给变量时,在内部将数据类型记录下来 解释型 程序每执行到源程序的某一条指令,则会有一个称之为解释程序的外壳程序将源代码转换成二进制代码以供执行,总言之,就是不断地解释.执行.解释.执行 强类型 一旦一个变量被指定了某个数据类型,如果不经过强制转换,那么它就永远是这个数据类型了 优点:效率高,团队开发,移植,拓展,嵌入 缺点:速度慢,不能加密,禁

【python基础】类&amp;对象

一.类 1.对同一类事物抽象的描述,抽象的概念 2.定义类的语法: class 关键字——命名规则:大驼峰StudentInfo; (小驼峰studentInfo) class 类名: pass 3.属性: 理解为用于描述类名词 (名字, 年龄, 颜色, 身高,...) 4.方法: 也叫做函数, 理解为类能够实现的行为功能(吃饭, 睡觉, 打豆豆,...) 二.对象: 真实存在的,类的具体的一个实例 1.对象 : 也叫做实例 2.创建对象的过程:叫做类的实例化 3.对象.方法() 获取对象的属性

【python基础】之str类字符串

str类字符串是不可变对象 1.创建字符串 s1 = str() #创建一个空字符串 s2 = str("hello") #创建字符串"hello" 2.处理字符串的常用函数和操作 (1).函数 len() 返回一个字符串的字符个数 max() 返回字符串中最大的字符 min() 返回字符串中最小的字符 >>>s = "Welcome" >>>len(s) 7 >>>max(s) 'o' &g

python基础(类、对象、包)完整的总结

python基础(类和对象.包)类和对象对象是看的见摸的着的类是模板对象需要类才能创建出来类的构成(三个部分)类的名称:类名类的属性:一组数据类的方法:允许进行操作的方法(行为)class 类名():def添加方法class Cat():def run(self):print("cat is running")xiaobai = Cat()xiaobai.run()xiaobai.name = "小白"xiaobai.age = 40类的属性属性就是变量一个类可以创