隔壁老程呀 发表于 2022-2-5 23:31:44

帮忙解释一下这个语句有点看不懂

这个语句里面的slogan,这个是什么意思,没有搞懂.是从list1列表中从第3个位置到列表的最后一个意思吗,起什么作用
我调试的时候不加只写slogan程序也可以正常运行.没有搞懂是代表什么
list3 = for slogan in list1 for name in list2 if slogan == name]

kogawananari 发表于 2022-2-5 23:47:11

中括号里是slice对象的字面量
没有冒号的时候是相对于slice(stop)
有冒号的时候是相当于slice(start, stop[, step])

>>> li =
>>> li

隔壁老程呀 发表于 2022-2-6 09:47:01

kogawananari 发表于 2022-2-5 23:47
中括号里是slice对象的字面量
没有冒号的时候是相对于slice(stop)
有冒号的时候是相当于slice(start, sto ...

没有看懂你表达的意思,

隔壁老程呀 发表于 2022-2-6 09:51:01

kogawananari 发表于 2022-2-5 23:47
中括号里是slice对象的字面量
没有冒号的时候是相对于slice(stop)
有冒号的时候是相当于slice(start, sto ...

我的问题是slogan在下面的语句里面起什么作用,这个中括号不加只写slogan程序也可以运行
list3 = for slogan in list1 for name in list2 if slogan == name]

Twilight6 发表于 2022-2-6 10:37:19


是从list1列表中从第3个位置到列表的最后一个意思吗?

是的,表示 从下标索引第二 开始 到 整个序列长度

即 可以看成 此时的 开始索引为 2,end 默认值为序列长度, step 默认值为 1

调试的时候不加只写slogan程序也可以正常运行.没有搞懂是代表什么

看看整体解析:

https://fishc.com.cn/forum.php?mod=redirect&goto=findpost&ptid=175291&pid=4843477

yixinwenxin 发表于 2022-2-6 11:06:38

[ 下标 / 索引 ]
[ 下标开始 : 下标结束 : 步长]==

[ : ] --> 默认 开始 0 / 结束 尾 / 步长 1 都是默认

[ 开始 2 : ((结束默认) 步长默认) ]   开始从下标2元素开始下标结束默认和 步长默认
以下类推
[ (开始不写 0) : (下标结束位置) :(步长默认) ) ]

[ 开始默认 : 结束默认 : 每次的步长跨度几个下标 ]

yixinwenxin 发表于 2022-2-6 11:12:40

slogan输出整个序列--> 序列 == 一组元素(数据)

slogan [ 2: ]--> 从下标 2 开始 输出 到 结束 每次输出 1个元素 (步长) --> 下标默认值从 0 开始的 !
slogan[ : x ] --> 从下标 0 开始 输出 到 下标 x 停止输出默认步长1
slogan[ : : x ] --> 输出整个 序列 每次输出下标为 x的 下标元素
页: [1]
查看完整版本: 帮忙解释一下这个语句有点看不懂