鱼C论坛

 找回密码
 立即注册
查看: 2650|回复: 6

[已解决]第12讲课后习题第6题有不懂,求解答,谢了

[复制链接]
发表于 2021-3-16 16:01:45 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
为啥slogan[2:]和slogan打印结果不一样,那么slogan后面括号里面的  [2:]  代表啥意思???
最佳答案
2021-3-16 16:04:24
本帖最后由 昨非 于 2021-3-16 16:08 编辑

列表切片操作
[2:]就是取slogan第二个字符之后的所有字符
slogan[2:]指的是slogan去掉前面两个元素之后的所有内容。例如"1.Just do it'",去掉头两个元素结果就是“Just do it ”.

下面这个链接搜集了论坛上已有的解答,挺全的,有需要可以看一下哦
<font color="red">[已解决]</font>slogan[2:]和if slogan[0] == name[0]]请问这个有什么作用?
https://fishc.com.cn/thread-186001-1-1.html
(出处: 鱼C论坛)
QQ截图20210316155755.jpg
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-3-16 16:04:24 | 显示全部楼层    本楼为最佳答案   
本帖最后由 昨非 于 2021-3-16 16:08 编辑

列表切片操作
[2:]就是取slogan第二个字符之后的所有字符
slogan[2:]指的是slogan去掉前面两个元素之后的所有内容。例如"1.Just do it'",去掉头两个元素结果就是“Just do it ”.

下面这个链接搜集了论坛上已有的解答,挺全的,有需要可以看一下哦
<font color="red">[已解决]</font>slogan[2:]和if slogan[0] == name[0]]请问这个有什么作用?
https://fishc.com.cn/thread-186001-1-1.html
(出处: 鱼C论坛)
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-3-16 16:05:36 | 显示全部楼层
你这基础真么差还不赶紧回过头去补补课?

slogan[2:]  表示对原字符串 slogan 取其索引值为2(第3位)到最后的部分
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-3-16 16:08:59 | 显示全部楼层
本帖最后由 Peteryo01223 于 2021-3-16 17:16 编辑
  1. list3 = [name + ':' + slogan[2:] for slogan in list1 for name in list2 if slogan[0] == name[0]]
复制代码

以上答案中,一行code,包含了三个意思:
1. slogan 就是 list1 当中的每一个对象,name 就是 list2 当中的每一个对象,这里用 python 的语言给表达出来了;
2. 需要满足的条件是:某个 slogan 的第一个位置的 str 等于某个 name 的第一个位置的 str。本题中,条件是 “序号值相同”,这里用 python 的语言表达了出来;
3. 输出时,name 写在前,加上,从第三个位置开始的 slogan 的内容,这里用 python 的语言也给表达出来了。

你的提问,包含在上面的 “意思3” 中。大家解释的 Python 中的切片操作,你可能不熟悉,是指:按 str 位置, ‘切’ 出你想要的对象的内容来。
切片的规则在本题的应用,可以解释为:如果写 slogan(或者写 slogan [:]),这在 Python 中,指的是:对象的全部 str。如果写 slogan[2:],指的是从第二个 str 之后的位置开始的剩余内容。答案这么写,就是为了让 run 后结果美观,避免了序号(位置0)和英文的句号(位置1)的重复打印而已。并不高深啦。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-3-16 17:50:42 | 显示全部楼层
举例说明吧,这样比较直观。
>>> slogan = '一切皆有可能'
>>> slogan
'一切皆有可能'
>>> slogan[0]
'一'
>>> slogan[1]
'切'
>>> slogan[2:]
'皆有可能'
以上是一些简单的例子,
也就是说直接输入slogan则返回整个字符串里所有的元素。  
输入slogan[2:] 则返回这个字符串第三个元素开始到最后一个元素。(因为Python中计数是从0开始的,所以[2:]是从第三个元素开始)
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2021-3-16 20:32:33 | 显示全部楼层
切片操作
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-3-22 14:27:29 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-26 12:19

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表