请问这个问题要怎么修改呀?下标无法索引那应该怎么定义变量呢?是改用列表也没错呀?是数据库的问题吗还是什么
2条回答 默认 最新
- AI迅剑 2023-03-11 20:18关注
字符串
概念:字符串是有序的字符序列
作用:
保存字母,中文,符号
定义格式
变量名=字符串a = "hello"
b = 'hello' # 单引号和双引号没有区别 一个字符的时候可以用 '' 多个字符可以用 ""
1
保留文本格式用 “”" 文本 “”"下标索引
作用: 通过下标索引获取一个字符串中的某个位置的字符
格式: 变量名=字符串[下标索引]
索引方式 从左到右: 从0开始 0,1,2,3… 想要从右到左 -1,-2,-3…
异常输出 IndexError: string index out of range 超出范围,也就是常说的数组越界切片
作用:用来获取字符串中的某个字符或者是字符串子串(字符片段)
格式:变量名 = 字符串[起始:结束:步长]
步长的正负可以控制方向 正数从左到右 负数从右到左a = "abcdef"
切片取ace
ret1 = a[0:5:2]
1
2
字符串中的常用方法
应用方法的格式: 变量.方法()
find 查找在这个字符在字符串中的位置
如果不为-1 就是获取到了第一次出现该字符的下标索引 结果为-1就是没有拿到ret1 = a.find('a')
index 查找在这个字符在字符串中的位置 与find方法相似
如果不为-1 就是获取到了第一次出现该字符的下标索引 反之将报错 ValueError(查找的值超出索引范围): substring not foundret2 = a.index('a')
count 计算在这个字符串中该字符有几个ret3 = a.count('a')
replace 替换 replace(‘旧的值’,‘新的值’,替换个数)
替换只能替换数据 但是不能改变字符串的数据
#因为字符串是不可变的数据类型ret4 = a.replace('a', 'A', 3)
split 分割 切割 split(‘以这个字符为分割线’,分割几个)ret5 = a.split('c',2)
字符串中不常见的方法
rfind # find查找第一个出现的字符 rfind从右往左进行查找的第一个字符
capitalize 将首字母大写
title 将每段的首字母都大写
startswith 是否是以这个字符段进行开头 结果为:True或者Flase
endswith 是否是以这个字符段进行结尾 结果为:True或者Flase
lower 将所有的字符改为小写
upper 将所有的字符改为大写
tab 方便缩进
ljust 将字符串左对齐用x将字符串补充至20个字符
rjust 将字符串右对齐用x将字符串补充至20个字符
lstrip 截掉字符串左边的空格或指定字符
rstrip 截掉字符串右边的空格或指定字符
strip 截掉字符串左右两边的空格或指定字符
partition 把第一个该字符从字符串中分割出来
splitlines() 按照行分隔,返回一个包含各行作为元素的列表,如果 num 指定则仅切片 num 个行解决 无用评论 打赏 举报
悬赏问题
- ¥15 代码在keil5里变成了这样怎么办啊,文件图像也变了,
- ¥20 Ue4.26打包win64bit报错,如何解决?(语言-c++)
- ¥15 clousx6整点报时指令怎么写
- ¥30 远程帮我安装软件及库文件
- ¥15 关于#自动化#的问题:如何通过电脑控制多相机同步拍照或摄影(相机或者摄影模组数量大于60),并将所有采集的照片或视频以一定编码规则存放至规定电脑文件夹内
- ¥20 深信服vpn-2050这台设备如何配置才能成功联网?
- ¥15 Arduino的wifi连接,如何关闭低功耗模式?
- ¥15 Android studio 无法定位adb是什么问题?
- ¥15 C#连接不上服务器,
- ¥15 angular项目错误