Python入门——字符串对象

本文介绍了Python中的字符串对象,包括其不可变性质、创建方式和常见操作,如加法、乘法和长度计算。详细讲解了字符串方法,如capitalize()、center()、count()、encode()等,并重点解析了format()方法的使用,展示了如何格式化字符串。此外,还提到了join()和split()方法,分别用于字符串拼接和分割。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

什么是字符串对象?

答:在python中最常用的就是字符串,字符串的本质就是字符的序列,我认为一切代码总的来说都是字符串。Python 的字符串是不可变的,我们无法对原字符串做任何修改。但可以将字符串的一部分复制到新创建的字符串,达到“看起来修改”的效果。

为什么要用字符串对象?

答:字符串对象可以存放各种类型的符号,包括包含字母和数字的元素,使用更加的广泛。

字符串的使用

首先是字符串的创建,字符串的创建很简单,如下:
Python中可以使用一对单引号’'或者双引号""生成字符串。

s = "字符串的使用"
s
‘字符串的使用’
#你也可以用单引号
s = '字符串的使用'
s
‘字符串的使用’

下面介绍一下字符串的简单操,比如加法,乘法,长度:

加法
s = 'hello ' + 'world'
s
'hello world'
乘法
s = 'hello'*3
'hellohellohello'
长度
s = len(s)
6

字符串的方法

Python中的字符串方法有很多,可以通过help(str)查看,
先定义一个字符串:

s = “hello python”

调用 'capitalize’方法可以使字符串的首字母大写

>>> ss = "hello python"
>>> ss.capitalize()
'Hello python'
>>> 这种方法不会改变ss的值

调用center()方法可以让字符串居中,这里面有两个参数,一个是次数,第二个是填充的符号,要注意的是第一个参数必须大于字符串的长度

>>> ss.center(20,"_")
'____hello python____'
下划线的数量  == 20 - 字符数
>>> ss
'hello python'  这种方法不会改变ss的值
>>> 

调用count()方法,可以统计字符串中出现的字符或者字符串的数量

>>> ss.count('h')
2      ‘h’字符出现的数量是2
>>> ss
'hello python'
>>> 

调用encode()方法可以将字符串转换为字节,就是将计算机不认识的字符转换为计算机能认识的字符,比如要将汉字转换成编码,下面进行演示:

>>> sss.encode("utf-8")
b'\xe8\x8b\xb9\xe6\x9e\x9c apple'
>>> sss
'苹果 apple'   ‘苹果’呗转换为了\xe8\x8b\xb9\xe6\x9e\x9c这段代码
>>> 

调用endswith()可以判断字符是否以某个字符串结尾:

>>> sss.endswith('apple')
True
>>> sss
'苹果 apple'
>>> 

调用startswith()方法可以判断字符串是否以xx开头:

>>> sss
'苹果 apple'
>>> sss.startswith('苹果')
True
>>> 

调用find()方法,可以查找字符串中某个字符或者字符串的第一次出现的位置,

>>> ss
'hello python'
>>> ss
'hello python'
>>> ss.find('h')    返回出现的第一个字符的下标值
0
>>> ss.find('a')    如果没有这个字符则返回-1
-1
>>> ss.rfind('h')   使用rfind方法可以找到最后一个字符对应的下标值
9
>>> 

调用index()方法,可以查找字符串中某个字符或者字符串的第一次出现的下标值:

>>> ss.index('h')
0                    ‘h’字符第一次出现的下标值是0
>>> ss
'hello python'
>>> ss.index('a')     如果字符不存在则会报错
Traceback (most recent call last):
  File "<pyshell#43>", line 1, in <module>
    ss.index('a')
ValueError: substring not found
>>> ss.rindex('h')   使用rindex方法可以返回最后一个字符的下标值
9
>>> 

**

重点format()方法,这是一种可以格式化字符串的方式

**

具体用法如下,字符串中花括号 {} 的部分会被format传入的参数替代,传入的值可以是字符串,也可以是数字或者别的对象。

'{} {} {}'.format('a', 'b', 'c')
'a b c'

可以用数字指定传入参数的相对位置:

'{2} {1} {0}'.format('a', 'b', 'c')
'c b a'

还可以指定传入参数的名称:


'{x} {y} {z}'.format(x=1, y=2, z=‘apple’)
'1 2 apple'

调用join()方法,可以拼接字符串,对象必须是可以迭代的,可以将其转换为字符串:

>>> ss
'hello python'
>>> s1 = "-".join(ss)   将‘-’拼接到字符串中
>>> s1              
'h-e-l-l-o- -p-y-t-h-o-n'
>>> 
>>> s2 = ''.join(ss)   将‘’拼接到字符串中,相当于不变
>>> s2
'hello python'
>>> 

>>> s3 = ' '.join(ss) 将‘ ’拼接到字符串中
>>> s3
'h e l l o   p y t h o n'
>>> 


下面介绍一种和join方法刚好相反的spilt(分割)方法

>>> ss
'hello python'
>>> ss.split()     分割字符串
['hello', 'python']
>>> ss.split('h')   以‘h’字符分割字符串
['', 'ello pyt', 'on']
>>> 

还有各种对字符串做大小写转换和清除,替换的方法:

    lower			# 转小写
	upper			# 转大写 
	title			# 转换字符串为一个符合标题的规则
	strip			# 清除字符串两边的空格
	rstrip			# 清除右边的空格
	lstrip			# 清除左边空格
	replace			# 替换字符串

还有很多的判断方法,如下表

	istitle			# 判断字符串是不是标题
	isspace			# 判断是不是空白字符
	islower			# 判断是不是小写字母
	isupper			# 判断是不是大字母
	isalnum			# 判断是不是有字母和数字组成
	isalpha			# 判断是不是有字母组成
	isdigit			# 判断是不是数字组成
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值