做网站一定要用cms吗,wordpress 定时机制,WordPress FCKEditor,网站开发一个月前言
嗨喽#xff0c;大家好呀~这里是爱看美女的茜茜呐 索引#xff08;下标#xff09;
索引又称下标#xff0c;用来表示可迭代对象中的某个元素的位置。
用正整数表示的索引值#xff0c;从左向右定位#xff0c;从 0 开始计数#xff0c;如 0#xff0c;1#…前言
嗨喽大家好呀~这里是爱看美女的茜茜呐 索引下标
索引又称下标用来表示可迭代对象中的某个元素的位置。
用正整数表示的索引值从左向右定位从 0 开始计数如 012
用负整数表示的索引值从右向左定位从 -1 开始计数如 -1-2-3
例如
name meet # 计算机从0开始数#0123 (索引值|下标值) 从左向右#-4-3-2-1 从右向左print(name[2]) # 通过索引准确定位内容
print(name[-4]) # 通过索引准确定位内容输出的结果为
e
m更多精彩机密、教程尽在下方赶紧点击了解吧~
python源码、视频教程、插件安装教程、资料我都准备好了直接在文末名片自取就可 切片
有这样一个字符串meet_alex_wusir我们想要把其中的 alex 取出来该怎么做呢
一个可行的方法是分别用 a、l、e 和 x 的索引值把它们分别取出来
再利用字符串的 加和 操作把它们拼接起来就像这样 Python学习交流免费公开课免费资料
免费答疑系统学习加QQ群261823976name meet_alex_wusir
a name[5] # 取出a
b name[6] # 取出l
c name[7] # 取出e
d name[8] # 取出x
print(a b c d) # 拼接并打印字符串当然也可以通过循环的方法来取出相应的字符然后拼接成新的字符串
name meet_alex_wusir
i 5
s
while i 8:s name[i]i 1
print(s)因为这样的循环在 Python 中非常常用所以被封装成为了一种简便的方法就是字符串的 切片。
切片的基本格式和使用方法如下
name meet_alex_wusir# 0123456789
print(name[5:9]) # [起始位置:终止位置] 顾头不顾腚起始位置保留终止位置不保留
print(name[-5:]) # [起始位置:终止位置(默认到结尾)] 顾头不顾腚
print(name[:]) # [起始位置(默认从开头):终止位置(默认到结尾)] 顾头不顾腚输出的结果为
alex
wusir
meet_alex_wusir关于切片的终止位置的选择还有一个技巧是终止位置 起始位置 切片长度。
例如上面的例子中起始位置为 5切片长度为 4终止位置为 5 4 9。
有的时候我们并不想要一个一个取字符而是要隔一个字符取一个。
比如对于上面 “meet_alex_wusir” 的例子我们想要取第 3、5、7 位的 e、_、l该如何操作呢
我们依旧可以使用最原始的分别取值然后拼接字符串的方法 Python学习交流免费公开课免费资料
免费答疑系统学习加QQ群261823976name meet_alex_wusir
a name[2]
b name[4]
c name[6]
print(a b c)这种方法确实能得到我们想要的结果但是太过繁琐。
如果我们想要处理很长的字符串就会非常麻烦了。
这就需要我们在切片时引入 步长 变量。
步长 是使用切片方法的第三个参数默认值为 1。
对于上面的例子我们可以设置 步长 为 2
name meet_alex_wusir#0123456789#-6-5-4-3-2-1
print(name[2:7:2]) #[起始位置:终止位置:步长(默认为1)]如果我们把步长设置成 -1可以实现从右向左查找
name meet_alex_wusir
print(name[-1:3:-1]) # 步长可以控制查找方向输出的结果为
risuw_xela_在进行索引操作时如果输入的参数超过最大索引值时程序会报错。
而在进行切片操作时如果终止位置超出最大索引值时程序不会报错而是会走到字符串的结尾
name meet_alex_wusir
print(name[2:20:2])输出的结果为
e_lxwsr需要注意的是索引和切片只能给有序数据字符串、列表、元组使用。
整型和布尔值等均不可以用来进行索引和切片操作。
同整型一样字符串也是一个不可变的数据类型 Python学习交流免费公开课免费资料
免费答疑系统学习加QQ群261823976name meet
print(id(name))
name name 最帅了
print(id(name)) 在 Python 中对于字符串的赋值还会有这样一个有趣的情况
name meet
name1 meet
print(id(name))
print(id(name1)) 明明是两次赋值两个字符串的内存地址居然是相同的。
这是因为 Python 中有一个小数据池小数据会驻留。
在小数据驻留期间对相同的数据有新的赋值操作不会新开辟一个内存空间而是将变量指向已有数据的内存地址。
小数据池机制是为了节省内存空间。
尾语
感谢你观看我的文章呐~本次航班到这里就结束啦
希望本篇文章有对你带来帮助 有学习到一点知识~
躲起来的星星也在努力发光你也要努力加油让我们一起努力叭。 最后宣传一下呀~更多源码、资料、素材、解答、交流皆点击下方名片获取呀