字符串(str)的操作方法

目录

字符串的索引与切片

Python字符串运算符

 字符串方法


字符串的索引与切片

索引即下标,就是字符串组成的元素从第一个开始,初始索引为0以此类推。

str = 'ABCDEFGHIJK'
print(str[0])
print(str[5])

切片就是通过索引(索引:索引:步长)截取字符串的一段,形成新的字符串(原则就是顾头不顾腚)。

str = 'ABCDEFGHIJK'
print(str[0:3])
print(str[2:5])
print(str[0:]) #默认到最后
print(str[0:-1]) #-1就是最后一个
print(str[0:5:2]) #加步长
print(str[5:0:-2]) #反向加步长

Python字符串运算符

下表实例变量a值为字符串 "Hello",b变量值为 "Python":

操作符描述实例
+字符串连接a + b 输出结果: HelloPython
*重复输出字符串a*2 输出结果:HelloHello
[]通过索引获取字符串中字符a[1] 输出结果 e
[ : ]截取字符串中的一部分a[1:4] 输出结果 ell
in成员运算符 - 如果字符串中包含给定的字符返回 True'H' in a 输出结果 True
not in成员运算符 - 如果字符串中不包含给定的字符返回 True'M' not in a 输出结果 True
r/R原始字符串 - 原始字符串:所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符。 原始字符串除在字符串的第一个引号前加上字母 r(可以大小写)以外,与普通字符串有着几乎完全相同的语法。
print( r'\n' )
print( R'\n' )
%格式字符串 

 字符串方法

序号 
1

capitalize()

 

将字符串的第一个字母转换为大写

str = 'how do You do!'
str1 = str.capitalize()
print(str1)

输出结果: How do you do!

2

center(width, fillchar)


返回一个指定的宽度 width 居中的字符串,fillchar 为填充的字符,默认为空格。

  • width -- 字符串的总宽度。
  • fillchar -- 填充字符。
str = 'how do You do!'
str1 = str.center(20)
str2 = str.center(20, '*')
print(str1)
print(str2)

输出结果:

    how do You do!    
***how do You do!***

3

count(str, beg= 0,end=len(string))


返回 str 在 string 里面出现的次数,如果 beg 或者 end 指定则返回指定范围内 str 出现的次数

  • sub -- 搜索的子字符串
  • start -- 字符串开始搜索的位置。默认为第一个字符,第一个字符索引值为0。
  • end -- 字符串中结束搜索的位置。字符中第一个字符的索引为 0。默认为字符串的最后一个位置。顾头不顾尾 
str = 'how do You do!'
str1 = str.count('o')
str2 = str.count('do')
str3 = str.count('o', 2, 5)
print(str1, str2, str3)

输出结果:4、2和0

4

encode(encoding='UTF-8',errors='strict')


以 encoding 指定的编码格式编码字符串,如果出错默认报一个ValueError 的异常,除非 errors 指定的是'ignore'或者'replace'

str = "你好"
str_utf8 = str.encode("UTF-8")
str_gbk = str.encode("GBK")
print(str)
print("UTF-8 编码:", str_utf8)
print("UTF-8 解码:", str_utf8.decode('UTF-8', 'strict'))
print("GBK 编码:", str_gbk)
print("GBK 解码:", str_gbk.decode('GBK', 'strict'))

输出结果:

你好
UTF-8 编码: b'\xe4\xbd\xa0\xe5\xa5\xbd'
UTF-8 解码: 你好
GBK 编码: b'\xc4\xe3\xba\xc3'
GBK 解码: 你好

4

startswith(str, start =None, end=None)


检查字符串是否是以 obj 开头,是则返回 True,否则返回 False。如果startend 指定值,则在指定范围内检查。

 

  • str -- 检测的字符串。
  • start -- 字符串中的开始位置。
  • end -- 字符中结束位置。顾头不顾尾 
str = 'how do You do!'
str1 = str.startswith('h')
str2 = str.startswith('ho')
str3 = str.startswith('o', 1, 7)
print(str1)
print(str2)
print(str3)

 输出结果:

True
True
True

6

endswith(suffix, start =None, end=None)


检查字符串是否以 obj 结束,如果start 或者 end 指定则检查指定的范围内是否以 obj 结束,如果是,返回 True,否则返回 False.

 

  • suffix -- 该参数可以是一个字符串或者是一个元素。
  • start -- 字符串中的开始位置。
  • end -- 字符中结束位置。顾头不顾尾 
str = 'how do You do!'
str1 = str.endswith('!')
str2 = str.endswith('o')
str3 = str.endswith('Y', 0, 7)
print(str1)
print(str2)
print(str3)

 输出结果:

True
False
False

7

expandtabs(tabsize=8)


\t前面的补全

# 默认将一个tab键变成8个空格,如果tab前面的字符长度不足8个,则补全8个,如果tab键前面的字符长度超过8个不足16个则补全16个,以此类推每次补全8个。

str = 'how do\t You do!'
str1 = str.expandtabs(20)
print(str1)

 输出结果:how do               You do!

8

find(str, start=None, end=None)


检测 str 是否包含在字符串中,如果指定范围 start 和 end ,则检查是否包含在指定范围内,如果包含返回开始的索引值,否则返回-1,如有结果有多个返回的是第一个结果的索引值

 

  • str -- 指定检索的字符串
  • start -- 开始索引,默认为0。
  • end -- 结束索引,默认为字符串的长度。顾头不顾尾 
str = 'how do You do!'
str1 = str.find('o')
str2 = str.find('o', 2, 8)
print(str1)
print(str2)

 输出结果:1和5

9

index(str, start=None, end=None)


跟find()方法一样,只不过如果str不在字符串中会报一个异常.

检测 str 是否包含在字符串中,如果指定范围 start 和 end ,则检查是否包含在指定范围内,如果包含返回开始的索引值,否则返回一个异常,如有结果有多个返回的是第一个结果的索引值

  • str -- 指定检索的字符串
  • start -- 开始索引,默认为0。
  • end -- 结束索引,默认为字符串的长度。顾头不顾尾 
str = 'how do You do!'
str1 = str.index('o')
str2 = str.index('o', 2, 8)
print(str1)
print(str2)

输出结果:1和5 

10

isalnum()

 

只含字母数字则返回 True, 否则返回 False
如果字符串至少有一个字符并且所有字符都是字母或数字则返 回 True,否则返回 False

str = 'how do You do!'
str1 = str.isalnum()
print(str1)

str = 'a123' #不含空格,特殊字符
str2 = str.isalnum()
print(str2)

输出结果:

False
True
 

11

isalpha()

 

只含字母则返回 True, 否则返回 False
如果字符串至少有一个字符并且所有字符都是字母则返回 True, 否则返回 False

str = 'how do You do123!'
str1 = str.isalpha()
print(str1)

str = 'abc' #纯字母
str2 = str.isalpha()
print(str2)

输出结果:

False
True
 

 

12

isdigit()


如果字符串只包含数字则返回 True 否则返回 False..

str = 'how do You do123!'
str1 = str.isdigit()
print(str1)

str = '123' #只含数字
str2 = str.isdigit()
print(str2)

输出结果:

False
True
 

 

 

13

islower()


如果字符串中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是小写,则返回 True,否则返回 False

字母全为小写则返回 True,否则返回 False

str = 'how do You do!'
str1 = str.islower()
print(str1)

str = 'how do you do!'
str2 = str.islower()
print(str2)

str = 'HOW DO YOU DO!'
str3 = str.islower()
print(str3)

输出结果:

False
True
False
 

14

isnumeric()


如果字符串中只包含数字字符,则返回 True,否则返回 False

str = 'how do You do123!'
str1 = str.isnumeric()
print(str1)

str = '123' #只含数字
str2 = str.isnumeric()
print(str2)

输出结果:

False
True
 

 

15

isspace()


如果字符串中只包含空白,则返回 True,否则返回 False.

str = ' '
str1 = str.isspace()
print(str1)

输出结果: True 

16

title()

以数字,空格,特殊字符分隔的字母,首字大写,其余字母均为小写
返回"标题化"的字符串,就是说所有单词都是以大写开始,其余字母均为小写

str = 'how do you do!'
str1 = str.title()
print(str1)

str = '*how0do1you*do!'
str1 = str.title()
print(str1)

 输出结果:

How Do You Do!
*How0Do1You*Do!

17

isupper()

 

字符串中字母全为大写(可包含数字、特殊符号、空格等字符),则返回 True,否则返回 False
str = 'ABCD #11'
str1 = str.isupper()
print(str1)

输出结果:True 

18

join(seq)


通过指定字符连接序列中元素后生成的新字符串

  • sequence -- 要连接的元素序列。 
s1 = "-"
s2 = ""
seq = ("r", "u", "n", "o", "o", "b") # 字符串序列
print (s1.join( seq ))
print (s2.join( seq ))

输出结果:

r-u-n-o-o-b
runoob 

19

len(string)


返回对象(字符串、列表、元组、字典等)长度或字符个数。空格、特殊字符、汉字、数字都是占1个字符

str = 'ABCD #11'
str1 = len(str)
print(str1)

输出结果: 8

 

20

ljust(width[, fillchar])


返回一个原字符串左对齐,并使用 fillchar 填充至长度 width 的新字符串,fillchar 默认为空格。

 

  • width -- 指定字符串长度。
  • fillchar -- 填充字符,默认为空格。
str = 'ABCD'
str1 = str.ljust(20)
str2 = str.ljust(20, '*')
print(str1)
print(str2)

输出结果:

 

21

lower()


转换字符串中所有大写字符为小写.

str = 'AbcDEfgh'
str1 = str.lower()
print(str1)

输出结果:abcdefgh

22

swapcase()


将字符串中大写转换为小写,小写转换为大写

str = 'AbcDEfgh'
str1 = str.swapcase()
print(str1)

输出结果:aBCdeFGH 

23

upper()


转换字符串中的小写字母为大写

str = 'AbcDEfgh'
str1 = str.upper()
print(str1)

输出结果: ABCDEFGH

24

lstrip(chars=None)


截掉字符串左边的空格或指定字符。

  • chars --指定截取的字符。
str = '  AbcDEfgh  '
str2 = str.lstrip()
print(str2)

str1 = '***AbcDEfgh***'
str3 = str1.lstrip('*')
print(str3)

输出结果: 

AbcDEfgh  
AbcDEfgh*** 

25

max(str)


返回字符串 str 中最大的字母。按ascii码表来比较大小

str = '  AbcDEfgh  '
str1 = max(str)
print(str1)

输出结果:h 

26

min(str)


返回字符串 str 中最小的字母。按ascii码表来比较大小

str = 'AbcDEfgh'
str1 = min(str)
print(str1)

输出结果:A 

27

replace(old, new [, max])


把 将字符串中的 str1 替换成 str2,如果 max 指定,则替换不超过 max 次。

 

  • old -- 将被替换的子字符串。
  • new -- 新字符串,用于替换old子字符串。
  • max -- 可选字符串, 替换不超过 max 次
str = 'AAAAAAAAAABCDEF'
str1 = str.replace('A', 'b')
str2 = str.replace('A', 'b', 3)
print(str1)
print(str2)

输出结果: 

bbbbbbbbbbBCDEF
bbbAAAAAAABCDEF

28

rfind(str, beg=0,end=len(string))


类似于 find()函数,不过是从右边开始查找.

 

  • str -- 查找的字符串
  • beg -- 开始查找的位置,默认为0
  • end -- 结束查找位置,默认为字符串的长度。
str = 'AAAAAAAAAABCDEF'
str1 = str.rfind('A')
print(str1)

 输出结果: 9

29

rindex( str, beg=0, end=len(string))


类似于 index(),不过是从右边开始.

str = 'AAAAAAAAAABCDEF'
str1 = str.rindex('A')
print(str1)

输出结果: 9 

30

rjust(width,[, fillchar])


返回一个原字符串右对齐,并使用fillchar(默认空格)填充至长度 width 的新字符串

 

  • width -- 指定填充指定字符后中字符串的总长度.
  • fillchar -- 填充的字符,默认为空格。
str = 'AAAAAAAAAABCDEF'
str1 = str.rjust(20)
str2 = str.rjust(20, '*')
print(str1)
print(str2)

输出结果: 

      AAAAAAAAAABCDEF
*****AAAAAAAAAABCDEF

31

rstrip()


删除字符串字符串末尾的空格.

str = 'AAAAAAAAA  ABCDEF          '
str1 = str.rstrip()
print(str1)

输出结果:  AAAAAAAAA  ABCDEF

 

32

split(sep=None, maxsplit=-1)


以什么分割,最终形成一个列表此列表不含有这个分割的元素。默认为空格。

  • (sep -- 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。
  • maxsplit -- 分割次数。
str = 'how do You do'
str1 = str.split('o', 1)
str2 = str.split()
print(str1)
print(str2)

输出结果: 

['h', 'w do You do']
['how', 'do', 'You', 'do'] 

33

strip([chars])

 

strip() 方法用于移除字符串头尾指定的字符(默认为空格)或字符序列。
在字符串上执行 lstrip()和 rstrip()

 

  • chars -- 移除字符串头尾指定的字符序列。
str = '   how do You do   '
str1 = str.strip()
print(str1)

str = '****how do You do****'
str2 = str.lstrip('*')
print(str2)

str = '****how do You do****'
str3 = str.rstrip('*')
print(str3)

输出结果: 

how do You do
how do You do****
****how do You do

34

zfill (width)


返回长度为 width 的字符串,原字符串右对齐,前面填充0

  • width -- 指定字符串的长度。原字符串右对齐,前面填充0。
  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JavaScript提供了许多字符串操作方法,以下是一些常用的方法: 1. 字符串长度:使用`length`属性可以获取字符串的长度。 示例:`var str = "Hello World"; console.log(str.length); // 输出 11` 2. 字符串连接:使用`+`运算符可以将两个字符串连接起来。 示例:`var str1 = "Hello"; var str2 = "World"; console.log(str1 + " " + str2); // 输出 "Hello World"` 3. 字符串索引:可以通过索引访问字符串中的单个字符,索引从0开始。 示例:`var str = "Hello"; console.log(str); // 输出 "H"` 4. 子字符串提取:使用`substring(start, end)`方法可以提取字符串的子串,其中`start`表示起始索引(包含),`end`表示结束索引(不包含)。 示例:`var str = "Hello World"; console.log(str.substring(0, 5)); // 输出 "Hello"` 5. 字符串查找:使用`indexOf(substring)`方法可以查找子串在字符串中的位置,返回第一次出现的索引,如果没有找到则返回-1。 示例:`var str = "Hello World"; console.log(str.indexOf("World")); // 输出 6` 6. 字符串替换:使用`replace(oldValue, newValue)`方法可以将字符串中的指定子串替换为新的子串。 示例:`var str = "Hello World"; console.log(str.replace("World", "CSDN")); // 输出 "Hello CSDN"` 7. 字符串分割:使用`split(separator)`方法可以将字符串按照指定的分隔符分割成数组。 示例:`var str = "Hello,World"; console.log(str.split(",")); // 输出 ["Hello", "World"]` 8. 字符串大小写转换:使用`toUpperCase()`方法可以将字符串转换为大写,使用`toLowerCase()`方法可以将字符串转换为小写。 示例:`var str = "Hello World"; console.log(str.toUpperCase()); // 输出 "HELLO WORLD"`

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值