5、Python学习笔记 - 字符串的基本操作

1、拼接

  • 字符串之间直接使用"+"进行字符串拼接
  • 字符串和其他类型之间不能直接拼接,需要都统一成字符串格式再进行拼接。
  • 使用str()函数直接转换成字符串格式
str1 = "小明今年"
age = 9
str2 = "岁了"
print(str1 + str2)  # 小明今年岁了
print(str1 + str(age) + str2)  # 小明今年9岁了
  • str.join(listname) # 括号中的内容主要是列表,也可以是其他容器
    作用:把字符串插入到列表中每相邻的两个数据之间,组成一个新的字符串

2、计算字符串长度

len(stringname)

3、截取(切片)

  • 截取后原来的字符串保持不变
  • 截取时需要注意索引是否超出字符串长度
  • stringname[start:end :step]
    • stringname:待切片的字符串
    • start:要截取的第一个字符的索引(包括该字符),如果不指定则默认为0
    • end:要截取的最后一个字符的索引(不包括该字符),如果不指定则默认为字符串长度
    • step:切片步长,如果省略则默认为1,当省略该步长的时候,最后一个冒号也可以省略
      截取时需要注意指定的索引是否存在

4、分割

  • 把字符串分割成列表。如果split()函数中没有参数,则默认根据分隔符来分割。
    stringname.split(sep,maxsplit)
    • stringname:待分割字符串
    • sep:指定分隔符,可以包含多个分隔符。默认为None,即所有空字符(包括空格、换行符"\n"、制表符"\t"等)
    • maxsplit:指定分割次数(可选参数)。不指定或为-1,则没有限制
str3 = "你好,张三! hello,python"
print(str3.split()) # 无参的时候默认使用空格分割 ['你好,张三!', 'hello,python']
print(str3.split(",")) # ['你好', '张三! hello', 'python']
print(str3.split("!"))  # ['你好,张三! hello,python']
print(str3.split(maxsplit=1))	# 按照空格来拆分,且只拆分一次

5、检索字符串

1、统计指定字符串出现的次数。
stringname.count(sub)
sub:待查找的字符串
如果没有则返回0

2、检索是否包含指定字符串
stringname.find(sub)
sub:待查找的字符串
如果存在则返回首次出现该字符串时的索引;如果不存在,则返回-1

3、查询字符串中元素首次出现的位置
stringname.index(sub)
sub:待查找的字符串
如果存在则返回首次出现该字符串时的索引;如果不存在,则报错

3、验证是否以指定字符串开头
stringname.startwith(sub)
如果是则返回True,如果不是则返回False

4、验证是否以指定字符串结尾
stringname.endwith(sub)
如果是则返回True,如果不是则返回False

6、字母大小写转换

1、把大写字母转换成小写字母

stringname.lower()

2、把小写字母转换成大写字母

stringname.upper()

7、去除空格和特殊字符

特殊字符:制表符"\t"、回车符"\r"、换行符"\n"
1、去掉左右两边的空格和特殊字符
stringname.strip([chars])
chars:可选参数 指定要除去的字符,可以指定多个。若不指定,默认去除空格和特殊字符

2、去掉左侧空格和特殊字符
stringname.lstrip([chars])

3、去掉右侧空格和特殊字符
stringname.rstrip([chars])

8、字符串替换

stringname.replace(old_str,new_str,count)
ole_str:被替换的字符串
new_str:替换的内容
count:替换的次数,一般不写,默认为全部替换
返回值为替换后的完整字符串。原来的字符串没有发生改变

string1 = "hello,world!"
string2 = string1.replace("l", "xx", 2) # 替换两个l
print("替换后的新字符串:" + string2)  # 替换后的新字符串:hexxxxo,world!
print("替换后的原字符串:" + string1)  # 替换后的原字符串:hello,world!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值