鱼C论坛

 找回密码
 立即注册
查看: 1392|回复: 8

[已解决]010课关于list.extend方法的疑问

[复制链接]
发表于 2018-5-19 22:35:02 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 myckjx 于 2018-5-19 22:39 编辑

>>> menber
[1, 2, 3, 4, 5, [6, 's', 7]]
>>> menber[5].extend(['yes','no'])
>>> menber
[1, 2, 3, 4, 5, [6, 's', 7, 'yes', 'no']]

明明是想往menber[5]里面再添加一个list,结果没作用啊,相比menber[5].append只是添加时的数量多了,并没起到添加list效果,请老师指点。
_________________
怎样让menber变成[1, 2, 3, 4, 5, [6, 's', 7, ['yes', 'no']]]这样子?
最佳答案
2018-5-19 23:01:04
第一种,member[5].append(['yes',''no'])     原因append添加时候,是添加一个元素,把列表当成一个单一元素,既可
第二种,member[5].extend([['yes',''no']])   再加个括号就好
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-5-19 23:01:04 | 显示全部楼层    本楼为最佳答案   
第一种,member[5].append(['yes',''no'])     原因append添加时候,是添加一个元素,把列表当成一个单一元素,既可
第二种,member[5].extend([['yes',''no']])   再加个括号就好
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-5-19 23:01:32 | 显示全部楼层
展示下你整个过程的代码
  1. >>> list1=[1,2,3]
  2. >>> list1.append([4,5,6])
  3. >>> list1
  4. [1, 2, 3, [4, 5, 6]]
  5. >>> list1[3].append(['yes','no'])
  6. >>> list1
  7. [1, 2, 3, [4, 5, 6, ['yes', 'no']]]
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-5-19 23:18:37 | 显示全部楼层
walker_0521 发表于 2018-5-19 23:01
展示下你整个过程的代码

谢谢前辈指教
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-5-19 23:20:37 | 显示全部楼层
咕咕鸡鸽鸽 发表于 2018-5-19 23:01
第一种,member[5].append(['yes',''no'])     原因append添加时候,是添加一个元素,把列表当成一个单一元 ...

谢谢,明白了,再请问一个关于索引的问题
>>> menber = [1,2,3]
>>> menber
[1, 2, 3]
>>> menber.extend([[4,5]])
>>> menber
[1, 2, 3, [4, 5]]
>>> menber[3].extend([[[6,7]]])
>>> menber
[1, 2, 3, [4, 5, [[6, 7]]]]
>>> menber[3][2]
[[6, 7]]
>>> menber[3][2][1]
Traceback (most recent call last):
  File "<pyshell#57>", line 1, in <module>
    menber[3][2][1]
IndexError: list index out of range
————————
这又是哪里错了呢?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-5-19 23:33:28 | 显示全部楼层
本帖最后由 walker_0521 于 2018-5-19 23:34 编辑
myckjx 发表于 2018-5-19 23:20
谢谢,明白了,再请问一个关于索引的问题
>>> menber = [1,2,3]
>>> menber


根据你代码,
  1. menber[3][2]
复制代码
是一个嵌套数组,你得
  1. menber[3][2][0][0]
复制代码
或者
  1. menber[3][2][0][1]
复制代码
这样使用
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-5-19 23:51:21 | 显示全部楼层
本帖最后由 myckjx 于 2018-5-19 23:52 编辑
walker_0521 发表于 2018-5-19 23:33
根据你代码,是一个嵌套数组,你得或者这样使用


感谢啊前辈,终于明白了,extend最多只加两对( [[  ]] )就可以了,我[]加多了....
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-5-20 00:22:32 | 显示全部楼层
myckjx 发表于 2018-5-19 23:20
谢谢,明白了,再请问一个关于索引的问题
>>> menber = [1,2,3]
>>> menber

你可以根据menber[3][2] =[[6,7]] 看出,这个列表元素只有第0项,即[6,7]这一项
你添加6,7那里多了一对中括号
若判断IndexError: list index out of range 这个错误,可以用len来判断长度就知道错在哪了
len(menber[3][2])=1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-5-20 17:26:38 From FishC Mobile | 显示全部楼层
在yes,no两边再加一个中括号就可以了 ,不然他会把yes和no作为两个对象
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-25 06:43

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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