姚老师 发表于 2021-10-26 22:01:38

求助,列表3课后习题

3. 请问以下代码会打印什么内容?],EBxHjM?
AdZDNmku%9PSzw4Wi,!)g>[3|
>>> s =
>>> s[:] = "FishC"
>>> print(s)
复制代码

答:['F', 'i', 's', 'h', 'C']'u(r<he^aBc
.Yf;}sE5KJW9jd6S(G0i+[!8
解析:这道题我猜很多童鞋都会答错……版权属于:https://fishc.com.cn
JyvP2c4u.;&YT*rat@1j=X_Qh-
跟上一题的原理类似,同样先删除再替换,不过这回我们删除的是整个列表,然后再将赋值号(=)右边的可迭代对象(字符串)的每个元素插入到列表里面。H9B&X
高阶操作,记好笔记!版权属于:https://fishc.com.



0. 请问如何不直接使用下标索引值的前提下,将下面列表中的 “黑寡妇“ 替换为 ”神奇女侠“?a34{Wm7 f2
{z?Bt|X`N7reRL)!^ob:C"H;E5#.
>>> heros = ['蜘蛛侠', '绿巨人', '黑寡妇', '鹰眼', '灭霸', '雷神']
复制代码

答:heros = "神奇女侠",




请问,为什么同样的格式,“神奇女侠”插入列表的是整体,“FishC”插入列表的是分开的字符串?因为神奇女侠不可迭代吗?

王跌宕 发表于 2021-10-26 22:18:25

是把神奇女侠当做一个列表 整体插入另一个列表,变成了一个列表里面的一个元素,而FishC是把他当做一个列表使用。

大马强 发表于 2021-10-26 22:18:35

fishc 和 神奇女侠都是字符串,两者都是迭代的
上面的区别是前者是对整个列表赋值,后者是对列表的元素赋值
>>> a =
>>> a[:]
a[:]返回的是整个列表的切片,小甲鱼也说了先删除再替换,不过这回我们删除的是整个列表,然后再将赋值号(=)右边的可迭代对象(字符串)的每个元素插入到列表里面
同理这样的操作也是可以的a = "cdf"
>>> a
['a', 'c', 'd', 'f']
而后者就是元素等价于下面的操作
heros = ['蜘蛛侠', '绿巨人', '黑寡妇', '鹰眼', '灭霸', '雷神']
>>> heros
'黑寡妇'
>>> heros.index("黑寡妇")
2
>>> heros
'黑寡妇'
>>> heros = "神奇女侠"
>>> heros
['蜘蛛侠', '绿巨人', '神奇女侠', '鹰眼', '灭霸', '雷神']

18199673236 发表于 2021-10-27 15:34:27

hero =
hero[:] ="黑寡妇"
print(hero)
这样子才能代替

首先神奇女侠是插入到列表中
而fishc是          取代列表中的元素    是不一样的
页: [1]
查看完整版本: 求助,列表3课后习题