IT@程序员猿媛

class2-字符串操作

2019-05-04  本文已影响33人  凌航
  1. find:检查str是否包含在my_str或者规定的某个区间中,如果在,返回开始的索引值,否则返回-1。
    使用格式: find(self, sub, start=None, end=None)
    示例如下:
my_str = 'hello world neuedu and neueducpp'
index1 = my_str.find('neuedu')
print(index1)
index2 = my_str.find('neuedu',0,10) # 左闭右开
print(index2)

执行结果:

12
-1

  1. index: 与find类似,区别在于未找到字符串时报错,而不是返回-1。
    使用格式: index(self, sub, start=None, end=None)
    示例如下:
my_str = 'hello world neuedu and neueducpp'
index = my_str.index('neuedu')
print(index)
ndex1 = my_str.index('world',0,10)
print(index1)

执行结果:

ValueError: substring not found

  1. count: 反回str在my_str中或其某个区建中出现的次数。
    使用格式:count(self, sub, start=None, end=None)
    示例如下:
my_str = 'hello world neuedu and neueducpp'
count = my_str.count('neuedu')
print(count)
count = my_str.count('neuedu',0,20)
print(count)
name = 'hello world haha'
new_name = name.replace('ha', 'Ha')
print(new_name)

执行结果:

2
1
hello world HaHa

  1. replace: 用新字符串替换旧字符串中的某个子串。
    使用格式:replace(self, old, new, count=None)
    示例如下:
name = 'hello world haha'
new_name = name.replace('ha', 'Ha',1)
print(new_name)
price = '¥599'
price = price.replace('¥', '')
print(price)

执行结果:

hello world Haha
599

  1. split:以str为分隔符分割name,如果maxsplit指定值,那么仅分割maxsplit个子串,以列表形式返回。
    使用格式:split(self, sep=None, maxsplit=-1)
    示例如下:
name = 'hello world ha ha'
name_list = name.split(" ")
print(name_list)
name_list1 = name.split(" ", 2)
print(name_list1)

执行结果:

['hello', 'world', 'ha', 'ha']
['hello', 'world', 'ha ha']

  1. join:通过指定字符连接序列中元素后生成的新字符串。
    使用格式:join(self, iterable)
    示例如下:
str4 = ' '
list1 = ['my','name','is','songxiaobao']
my_name = str4.join(list1)
print(my_name)
my_name1 = '/'.join(list1)
print(my_name1)

执行结果:

my name is songxiaobao
my/name/is/songxiaobao

  1. strip,lstrip,rstrip:strip清除两端空白字符;lstrip、rstrip分别清除左边、右边空白字符。
    使用格式:strip(self, chars=None)
    lstrip(self, chars=None)

示例如下:

str = '   hello   '
str1 = str.strip()
print(str1)
print(len(str1))
str2 = str.lstrip()
print(str2)
print(len(str2))
str3 = str.rstrip()
print(str3)
print(len(str3))

执行结果:

  1. capitalize:将字符串的第一个字符大写。
    使用格式:capitalize(self)
    示例如下:
my_str = 'hello world neuedu and neueducpp'
my_str2 = my_str.capitalize()
print(my_str2)

执行结果:

Hello world neuedu and neueducpp

  1. title:把字符串每个单词首字符大写。
    使用格式:title(self)
    示例如下:
my_str = 'hello world neuedu and neueducpp'
my_str3 = my_str.title()
print(my_str3)

执行结果:

Hello World Neuedu And Neueducpp

  1. startwith,endwith:分别检测字符串是否以str开头或者结尾。
    使用格式:startswith(self, prefix, start=None, end=None)
    ndswith(self, suffix, start=None, end=None)
    示例如下:
my_str = 'hello world neuedu and neueducpp'
my_str4 = my_str.startswith('hello')
print(my_str4)
my_str5 = my_str.startswith('Hello')
print(my_str5)
my_str6 = my_str.endswith('cpp')
print(my_str6)

执行结果:

True
False
True

  1. upper,lower:把字符串变为大写,小写。
    使用格式:upper(self)
    lower(self)
    示例如下:
my_str = 'hello world neuedu and neueducpp'
my_str7 = my_str.upper()
print(my_str7)
my_str8 = my_str7.lower()
print(my_str8)

执行结果:

HELLO WORLD NEUEDU AND NEUEDUCPP
hello world neuedu and neueducpp

  1. rjust,ljust,center:分别返回一个原字符串右对齐,左对齐,居中对齐,并用空格填充的字符串。
    使用格式:rjust(self, width, fillchar=None)
    ljust(self, width, fillchar=None)
    center(self, width, fillchar=None)
    示例如下:
my_str_space = 'hello'
new_my_str_space = my_str_space.rjust(10)
print(new_my_str_space)
print(len(new_my_str_space))
new_my_str_space1 = my_str_space.ljust(100)
print(new_my_str_space1)
new_my_str_space2 = my_str_space.center(50)
print(new_my_str_space2)
print(len(new_my_str_space2))

执行结果:

  1. rfind(rindex):和find(index)类似,但是从后面开始查找,返回字符串最后一次出现的位置,如果没有匹配项则返回-1(报错)。
    使用格式:同index,find类似
    示例如下:
my_str = 'hello world neuedu and neueducpp'
index5 = my_str.rfind('neuedu')
print(index5)

执行结果:

  1. partition:把my_str以str分割成三部分(str前,str中,str后)以元祖形式返回。
    使用格式:partition(self, sep)
    示例如下:
my_str = 'hello world neuedu and neueducpp'
t_mystr = my_str.partition('neredu')
print(t_mystr)

执行结果:

23

  1. splitlines:按照行分割,返回一个包含各行作为元素的列表。
    使用格式:splitlines(self, keepends=None)
    示例如下:
line = 'hello\nworld'
print(line)
list_line = line.splitlines()
print(list_line)

执行结果:

hello
world
['hello', 'world']

  1. isalpha,isdigit,isalnum:分别判断字符串是否全是由字母组成,数字组成,字母或者数字组成,是则返回true。
    使用格式:isalpha(self)

示例如下:

my_str = 'hello world neuedu and neueducpp'
alpha = my_str.isalpha()
print(alpha)
alpha2 = 'dddddddddd'
alpha3 = alpha2.isalpha()
print(alpha3)
print(alpha2.isalnum())
print(alpha2.isdigit())

执行结果:

False
True
True
False

name = 'abcdef'
print(name[0:3]) # abc
print(name[3:5]) # de
print(name[2:]) # cdef
print(name[1:-1]) # bcde
print(name[:]) # abcdef
print(name[::2]) # ace
print(name[5:1:-2]) # fd
print(name[::-1]) # fedcba
print(name*3) # 输出3次name

abc
de
cdef
bcde
abcdef
ace
fd
fedcba
abcdefabcdefabcdef

上一篇下一篇

猜你喜欢

热点阅读