Python入门(4)---字符串

四、字符串

1.字符串的定义

双引号,单引号或三引号中的内容就是字符串
注意:三引号在没有变量接收的时候表示注释,否则表示字符串

# 本例演示python中的字符串
# 单引号
name = 'zhangsan'
# 双引号
a = 'zhi'
# 三引号
b = '''abc'''
str = """abcd"""
# <class 'str'> zhangsan
# <class 'str'> zhi
# <class 'str'> abc
# <class 'str'> abcd
print(type(name),name)
print(type(a),a)
print(type(b),b)
print(type(str),str)
# 定义含单引号的字符串,可以用双引号括起来
c = "'abc'"
print(c)
# 字符串的乘法
d = "hello"*3
# hellohellohello
print(d)

2.字符串的输入和输出

使用input函数和print函数即可

3.字符串的下标

python中字符串支持正数下标和负数下标
比如:
H E L L O
正数下标: 0 1 2 3 4
负数下标: -5 -4 -3 -2 -1

# 本例演示字符串的正数和负数下标
# 正数下标从0开始,表示第一个字符
# 负数下标从-1开始,表示最后一个字符
str = "hello"
# h
print(str[0])
# o
print(str[-1])
# e
print(str[1])
# l
print(str[-3])
# len()函数得到字符串的长度
# 5
print(len(str))
# 取最后一个字符
print(str[len(str)-1])

4.字符串的切片

字符串切片可以获取字符串中的一段
语法:变量[start: end:step]
start:表示开始位的下标1
end:结束位的下标,不包含end
step:步长,默认是1
切片会得到一个新的字符串

# 字符串的切片
name = "zhangsan"
# ang
print(name[2:5:1])
# step如果是1,则可以省略
print(name[2:5])
# 若end不写,则表示len
# angsan
print(name[2:])
# start位置不屑,表示0
# zhangsan
print(name[:])
# zha
print(name[:3])
# 使用负数下标
# ngsa
print(name[-5:-1])
# 步长可以是-1
# na
print(name[3:1:-1])
# 字符串的逆置(常用)
# nasgnahz
print(name[::-1])
# 步长为2
# zaga
print(name[::2])

5.字符串查找的相关操作

(1)find函数,rfind函数
(2)index函数,rindex函数
(3)count函数:统计出现的次数

# 本例演示字符串的查找
# find(str,start,end):在字符串中查找是否包含str
# start表示开始位置(默认是0),end表示结束位置(默认是len),不包含end
# 若找到,返回str在字符串中位置的正数下标.若没找到,则返回-1
str = "Hello World!"
index1 = str.find("llo",0,len(str))
# 2
print(index1)
index2 = str.find("Wor")
# 6
print(index2)
index3 = str.find("abc")
# -1
print(index3)
# rfind() = right find 从右边开始查找
str2 = "hello world hello"
# 12
print(str2.rfind("hello"))
# 0
print(str2.find("hello"))
# index():参数与find一样,作用也相同
# 与find区别:若没找到,会报错
# 0
print(str2.index("hello"))
# 下面这行代码会报错
# print(str2.index("hhh"))
# rindex()从右边开始查找
# 12
print(str2.rindex("hello"))
# count(str)函数,统计str出现的次数
# 2
print(str2.count("hello"))
# 2
print(str2.count("h"))
# 0
print(str2.count("aaa"))

6.字符串的替换:replace方法

# 本例演示字符串的替换
# 使用replace方法:replace(oldstr,newstr,count)
# oldstr:旧的字符串,newstr:新的字符串,count:替换次数,默认是全部替换
# 返回值:被替换后得到的字符串
name = "zhangsan"
name = name.replace("a","e",1)
# zhengsan
print(name)
name = name.replace("a","e")
# zhengsen
print(name)

7.字符串的切割:split方法

# 本例演示字符串的切割
# 使用split方法:split(str,count):将原字符串按照str进行count次分割,默认是按空格全部分割
# 返回值:列表[]
str1 = "Hello World !"
str1 = str1.split()
# ['Hello', 'World', '!']
print(str1)
str2 = "Hello World Hello abc"
str2 = str2.split("Hello")
# ['', ' World ', ' abc']
print(str2)
# rsplit()从右向左切割

8.字符串的连接:join方法

# 本例演示字符串的连接,使用join方法
# mystr.join(str):将mystr插入到str的每一个元素当中,形成一个新的字符串
mystr = "Hello"
mystr = mystr.join("abc")
# aHellobHelloc
print(mystr)
str = "Hello"
# 在每两个字母间插入下划线
str = "_".join(str)
# H_e_l_l_o
print(str)
# 定义列表
list = ["abc","efg"]
# 下划线插入到列表的元素之间
list = "_".join(list)
# abc_efg
print(list)

猜你喜欢

转载自blog.csdn.net/weixin_46841376/article/details/113089830