20天零基础自学Python | Day8 String字符串

时间:2023-02-05 10:57:35


大家好,我是宁一。

字符串是以英文引号括起来的任意文本。

不管是单引号还是双引号,只要成对出现的就行。

比如:'abc'、"宁一"、"hello"、'123'

1、获取字符串

如果我们需要获取字符串中的某个值,可以通过[ ]来获取,注意字符串的索引是从0开始的。

20天零基础自学Python | Day8 String字符串

name = "maoning836"
# 获取字符串第1个值,注意是从0开始
name[0]
# 输出 'm'
# 获取字符串第2个值
name[1]
# 输出 'a'
# 获取”maoning”这个单词,不包括最后一个字符
name[0:7]
name[:7] # 这样写也可以,将0省略
# 获取后面3个数字’836'
name[7:10]
name[-3:] # 这样写也可以,用负数索引

2、处理字符串

a = "maoning"

b = "836"

(1)拼接 +

name = a + b
# 输出 'maoning836'

(2)替换 replace()


a.replace("mao","miao")
# 输出 'miaoning'

(3)长度 len()


len(a)
# 输出 7

(4)转换大小写 


# 转换成大写
a.upper()
# 输出 'MAONING'
# 转换成小写
a.lower()
# 输出 'maoning'

(5)查找 find()

find() 方法用来检测字符串中是否包含某个值。如果包含,返回值在字符串中的起始索引值。如果不包含,返回-1。


a.find("ning")
# 输出 3
a.find("nihao")
# 输出 -1

(6)判断 in

in用来判断某个值是否存在于字符串中,与上面的find()用法差不多,但是不会返回索引,而是True或者False


"f" in a
# 输出 False
"mao" in a
# 输出 True

也可以使用not in,输出结果刚好跟 in  相反。


"mao"  not in a
# 输出 False

(7)分割 split()

使用split()来将字符串分割成列表


a.split("n")
# 输出 ['mao', 'i', 'g']

3、格式化字符串

字符串格式化,其实就是在字符串中添加一个占位符,再将值插入到对应的占位符的位置。

比较复杂的是,不同格式的字符串,对应的占位符不一样,比如整数用%d、浮点数用%f。

具体占位符可以参考这个表格:

20天零基础自学Python | Day8 String字符串

用法:

先用占位符%s将位置占住,再写个%,后面跟上要放在占位符上面的值a


"My name is %s" % a
# 输出 'My name is maoning'

这个方法其实我们不太常用,因为字符串拼接我们直接用+也是同样的效果。

"My name is " + a

格式化字符串的用法,我们经常用来格式化浮点数。


c = 1.23456
# 保留两个小数点
'%.2f' % c
# 输出 '1.23'
# 保留4个小数点,甚至还能帮咱们四舍五入,太赞了
'%.4f' % c
# 输出 '1.2346'

点击关注,Python入门不迷路~