python中的字符串

字符串

在python中,字符串是有序不可变序列,字符串取元素、遍历和列表、元组是一致的。同时,字符串元素不能修改。

1.创建字符串

我们可以通过单引号、双引号和三引号创建字符串变量。其中三引号可以用来创建多行字符串。

2.获取字符串

在字符串变量获取单个字符串的操作与列表和元组相同,都是通过下标获取。注意,凡是修改字符串的操作都会产生新的字符串。

例如,对于字符串"hello world",我们获取"e"这个子串,

str1 = "hello world"
print(str1[1])

运行结果如下,

e

3.原生字符

在python中,我们有时在打印系统路径时,会发生下面的情况。

例如,我们要打印路径D:\python\rua,

path = "D:\python_class\rua"
print(path)

运行结果如下,

ua

出现这种情况是由于其中含有"\r"子串的存在,使得系统误判。

这种情况下我们可以对"\"进行转义。

path = "D:\python_class\\rua"
print(path)

运行结果如下,

D:\python_class\rua

但是,这需要我们手动加入"\",费时费力。
此时,我们可以使用原生字符"r",

path = r"D:\python_class\rua"
print(path)

运行结果如下,

D:\python_class\rua

4.字符串的通用操作

字符串的拼接(+)、重复(*)、成员操作(in)、切片和长度判断(len()),与列表和元组操作相同。

5.字符串函数

5.1.字符串的查找和替换

5.1.1.count()

count()函数用于统计字符串中特定子串的出现次数。

例如,分别统计字符串"hello world"中子串"e"和"l"的出现次数,

str1 = "hello world"
print(str1.count("e"))
print(str1.count("l"))

运行结果如下,

1
3
5.1.2.find()

find()函数可以从左向右查找指定子串,如果存在,返回子串下标,不存在返回-1。

例如,分别查找字符串"hello world"中子串"or"和"eo"的下标,

str1 = "hello world"
print(str1.find("or"))
print(str1.find("eo"))

运行结果如下,

7
-1
5.1.3.replace()

replace()函数可以将字符串中的特定子串替换为新子串。

例如,将字符串"hello world"中的子串"world"替换为"student",

str1 = "hello world"
print(str1.replace("world", "student"))

运行结果如下,

hello student

5.2.字符串的分割和组合

5.2.1.split()

split()函数可以按照指定字符串将字符串分割成为一个列表。

例如,将字符串"python is easy to learn"按照空格分割成为一个列表,

str2 = "python is easy to learn"
print(str2.split(" "))

运行结果如下,

['python', 'is', 'easy', 'to', 'learn']
5.2.2.join()

join()函数可以把列表中的字符元素组合成一个字符串。

例如,将列表[‘python’, ‘is’, ‘easy’, ‘to’, ‘learn’]加入空格并组合成为一个字符串,

list1 = ['python', 'is', 'easy', 'to', 'learn']
print(" ".join(list1))

运行结果如下,

python is easy to learn

5.3.字符串的判断

isdecimal()函数可以判断字符串是否有纯数字组成,但是不能判断字节字符串。
isdigit()函数可以判断字符串是否有纯数字组成,同时可以判断字节字符串。
isnumeric()函数可以判断字符串是否有纯数字组成,同时可以检测汉字数字。

isalpha()函数可以判断字符串是否有纯字母组成,同时可以检测汉字。

5.4.字符串转换

5.4.1.大小写转换

lower()函数可以将大写字符转换为小写字符。
upper()函数可以将小写字符转换为大写字符。

例如,分别将字符串"Hello World"转换为全小写和全大写,

str3 = "Hello World"
print(str3.lower())
print(str3.upper())

运行结果如下,

hello world
HELLO WORLD
5.4.2.strip()

strip()函数可以删除字符串两边指定字符,默认删除空白字符(回车、换行、空格、tab)。

例如,删除字符串"aasdkhjaa"两边的a,

str4 = "aasdkhjaa"
print(str4.strip("a"))

运行结果如下,

sdkhj

6.字符串的format格式化

我们可以使用format()将字符串格式化。

例如,

a = 20
b = 34.789
c = 123456789
res = "a = {a}, b = {b}, c = {c}".format(c=c, a=a, b=b)
print(res)

运行结果如下,

a = 20, b = 34.789, c = 123456789

注意,{a} 是指把format参数中参数名为a替换{a} 参数名=值。

format()各个参数详细介绍如下,

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值