鱼C论坛

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

[已解决]列表提取傻傻分不清

[复制链接]
发表于 2021-1-15 15:37:07 | 显示全部楼层 |阅读模式

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

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

x
各位大神们,我是python初学者,有个我无法区分的问题。
之前学列表的时候,提取元素直接可以打印下标或者切分。
但是在学字符串的时候有一题:
str1 = '<a href="http://www.fishc.com/dvd" target="_blank">鱼C资源打包</a>'
拆出'www.fishc.com'。
我用了这个方法:
str1.split('/')
str2 = str1[2]
应该是得到str1列表的第3个下标的元素,但打出来是' '。。。不理解怎么回事
有哪位大神有空看到的话能教教我吗?
最佳答案
2021-1-15 15:46:11
记住:所有的字符串方法,都不会改变字符串本身!
你应该把str1.split的结果存到另一个变量里面:
str3 = str1.split('/')
print(str3[2]))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-1-15 15:46:11 | 显示全部楼层    本楼为最佳答案   
记住:所有的字符串方法,都不会改变字符串本身!
你应该把str1.split的结果存到另一个变量里面:
str3 = str1.split('/')
print(str3[2]))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-1-15 15:58:26 | 显示全部楼层
qiuyouzhi 发表于 2021-1-15 15:46
记住:所有的字符串方法,都不会改变字符串本身!
你应该把str1.split的结果存到另一个变量里面:

谢谢大佬,类似的问题在上一节课也遇到了。
课后作业12讲里面第6题,有个排序的,也好像是可以直接提取字符,不是提取元素。
答案如下:
>>> list3 = [name + ':' + slogan[2:] for slogan in list1 for name in list2 if slogan[0] == name[0]]
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-15 16:00:24 | 显示全部楼层
截屏2021-01-15 15.55.41.png

如果直接说的话,肯定不太好理解,那就插图

type()函数可以看出 str1.split('/') 的结果是个 list,这貌似已经离答案很近了

但是,问题来了,当我们真正切割了str1后,再次查看str1,惊奇的发现str1竟然没有发生变化

恍然大悟,需要将切割后得到的内容赋值给一个新的变量,即 list1

此时调用 list1,发现已经获得了切割后的结果

最后重新赋值给一个新的变量 result = list1[2],就能得到我们需要的结果了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2021-1-15 16:02:29 | 显示全部楼层
print(str1 . split('/')[2])
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-1-15 16:18:28 | 显示全部楼层
Daniel_Zhang 发表于 2021-1-15 16:00
如果直接说的话,肯定不太好理解,那就插图

type()函数可以看出 str1.split('/') 的结果 ...

这个答案很精彩,但是我已经给过最佳答案了,不好意思
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-15 16:26:30 | 显示全部楼层
hhss0obc 发表于 2021-1-15 16:18
这个答案很精彩,但是我已经给过最佳答案了,不好意思


没事,可以帮助后来的人

也算给自己一个练习的机会
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-16 22:05

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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