为了账号安全,请及时绑定邮箱和手机立即绑定

不太理解::的含义

print  L(-46::5)是啥意思

正在回答

5 回答

看看解释的行不行:

(index) 索引,或C中的下标含义 
[起始index:要到达 index:步进]
默认起始index 为0;
到达默认为 列表或元组的长度;==》len(list)  #不是机理,只是替代解释下。

-1是倒数第一个,正数 0 是第一个;易混淆

L=range(9)    #=range(0,9)
L[:-1] = range(0,8)
L[:9] = range(0,9) #=[0,1,2,3,4,5,6,7,8]  len(L)=9
步进默认为正数的 1; 是索引+1哟。

同样说明了,它不会打印出 要到达的索引下的值,和range 一样。


我最容易将中间的 index 和个数混淆 ;

当我定义一个 L = [0,1,2,3,4,5,6,7,8]   or  L = range(0,9)  因为加了个0 会更方便点,建议你去掉零用range(1,9)去试试。

## L = range(0,9) #假设 
## L[::] = L[:] = L = range(9)  
## L[1:]==L[1::1] =L[1:1:]=...= range(1,9) 舍去了 0 的索引值:0
#-------
## L[1:3]=range(1,3)=[1,2] 因为 2的 index 是2
## L[:3] =L[0:3] = [0,1,2]
#-------

太难写了;还是分析你的问题把:

 L(-46::5)  就等于 起始索引为-46(倒数第46)的那个值 到 末尾(None取默认值) 的值,且步进为5,就是彼此之间的索引为+5

#
L = range(1,101)  #长度 len(L) = 100
#↓
##L[-46::5] = L[100-46::5] = range(55,101,5) # 因为100的索引是100 要打印它,必须"溢出"一个1.所以是101


0 回复 有任何疑惑可以回复我~

标准模板应该是L[x:y:z],x、y、z可以根据需要省略,不需要写出

0 回复 有任何疑惑可以回复我~

其实就是省略了第二个参数,从倒数第46个数开始,到最后一个数结束,每五个数取一个数

0 回复 有任何疑惑可以回复我~

这个起始索引还得自己去列表里计算一下。

0 回复 有任何疑惑可以回复我~

5的倍数可以用 ::5 取出,要确定起始索引。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识Python
  • 参与学习       758625    人
  • 解答问题       8667    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

不太理解::的含义

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信