初识字符串!

本文详细介绍了Python中字符串的基本使用方法,包括字符串字面值的写法、索引访问、遍历操作,以及常用的字符串操作如长度计算、替换、分割、计数、查找索引和字符转换等。
摘要由CSDN通过智能技术生成

基本介绍

1.在python中处理文本数据是使用str对象
2.字符串字面值有三种写法:

  1. 单引号:'允许包含“双”引号’
  2. 双引号“—” 三重单引号、三重双引号
    使用三重引号的字符串可以跨越多行–其中所有的龙柏字符都将包含在该字面值。
    3.字符串是字符的容器,一个字符串可以存放多个字符。

字符串支持索引

一、适用语法
字符串名[索引]
二、举例说明
str_a=“red-green”
比如:要取出str_a字符串的第三个值/元素“d”,则通过str_a[2]就可以访问到。提示:注意索引是从0开始计算的,取出单个字符,类型仍然是字符串。

str_a = "red-green"
print("str_a的第三个值/字符是:", str_a[2], "类型是:", type(str_a))

运行结果:
在这里插入图片描述

字符串的遍历

什么是字符串的遍历呢?
就是将字符串中的每个元素依次取出,进行处理操作,就是遍历/迭代。

# 使用while和for遍历字符串
str_b = "hello!-郝小龙"
# while循环遍历
index = 0
while index < len(str_b):
    print(f"第{(index + 1)}个元素是{str_b[index]}")
    index += 1
print("-"*30)
#for遍历
for ele in str_b:
    print(ele)

运行结果如下:
在这里插入图片描述
在这里插入图片描述

注意事项和细节:

1.字符串索引必须在指定范围内使用,否则会报错,比如:str_d="hello_郝小龙"有效下标为0-9,索引也可以从尾部开始,最后一个元素的索引为-1,往前一位为-2,以此类推。
2.字符串是不可变序列,不能修改。
3.字符串长度没有限制,取决于计算机内存的大小。

str="hi-郝小龙"
#通过索引可以访问元素
print(str[3])
#不能修改元素
# str[3]="李"

运行结果:
在这里插入图片描述

常用操作

1.len(str):字符串的长度,也就是包含多少个字符
2.str.replace(old,new,[,count]):返回字符串的副本,其中出现的所有字符串old都将被替换为new,如果给出了可选参数count,则只替换前count次出现。
3.str.split(step=none,maxsplit=-1):返回一个由字符内单词组成的列表,使用step作为分隔字符串。如果给出了maxsplit,则最多进行maxspilt次拆分(因此,列表最多有maxspilt个元素),如果maxsplit未指定区域为-1,则不拆拆分次数。
4.str.count(sub):统计指定字符在字符串中出现的次数。
5.str.index(sub):从字符串中找到指定字符串第一个匹配项的索引位置。
6.str.strip([chars]):返回原字符串的副本,移除其中的前导和末尾字符,chars为指定要移除的字符串。
7.str.lower():返回字符串小写的副本。
8.sstr.upper():返回字符串大写的副本。

#演示字符串常用操作
str_names="jack tom mary hxl nono tom"
#len(str):字符串的长度,也就是包含多少个字符
print(f"{str_names}{len(str_names)}个字符")

#演示str.replace(old,new[,count])的使用
#需求:将一个“jack”替换为“杰克”,只替换一个
str_names_new=str_names.replace("jack","杰克",1)
#返回字符串的副本,表示原来的字符串不变,而是返回一个新的字符串
print("str_names_new:",str_names_new)
print("str_names:",str_names)

#对str_names按照“ ”进行分割
str_names_split=str_names.split(" ")
print(f"str_names_split内容是{str_names_split}类型是{type(str_names_split)}")
print(f"str_name内容是:{str_names}")

#str.count(sub):统计指定在字符串中出现的次数
#统计tom在字符串中出现了几次
print("tom在字符串出现的次数:",str_names.count("tom"))

#str.index(sub):从字符串中找出指定字符串第一个匹配项的索引位置
print(f"tom出现的索引是:{str_names.index('tom')}")


# #str.strip([chars]):返回原字符串的副本,移除其中的前导和末尾字符,chars为指定要移除字符串
#这个方法通常可以去除前后的空格或者去除指定的某些字符

print(" jack ".strip(" "))
print("123jack321".strip("123"))

#str.lower():返回字符串小写副本,不影响原来字符
str_names="hspHsp"
str_names_lower=str_names.lower()
print("str_names_lower:",str_names_lower)
print("str_names:",str_names)

#str_names_upper():返回原字符的副本,不影响原来的字符
str_names_upper=str_names.upper()
print("str_names_upper:",str_names_upper)
print("str_names:",str_names)

运行结果:
在这里插入图片描述
字符串的比较:

  1. 运算符:>,>=,<,<=,==,!=
  2. 比较规则:首先比较两个字符串中的第一个字符,如果相等则继续比较下一个字符,依次比较下去,直到两个两个字符串中的字符不再相等时,其比较结果就是两个字符串的所有后续字符将不在比较。
  3. 比较原理:两个字符比较时,比较是其(原码/码值),调用内置函数ord可以得到指定字符的ordinal.value与内置函数ord对应的是内置函数chr,调用内置函数chr时指定ordinal.value可以得到其对应的字符。
print(ord('1'))
print(ord('2'))
print(ord('a'))
print(ord('b'))
print(ord('郝'))
print(ord('小'))
print(ord('龙'))

print("-"*30)
print(chr(49))
print(chr(40857))

运行结果:
在这里插入图片描述

print("tom" > "hxl")  # t
print("tom" > "to")  # t
print("tom" > "tomcat")  # f
print("tom" < "郝小龙")  # t
print("tom" > "tom")  # f
print("tom" <= "tom")  # t

  • 16
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值