鱼C论坛

 找回密码
 立即注册
查看: 2536|回复: 3

两种修改方式有什么不同

[复制链接]
发表于 2017-6-23 14:21:51 | 显示全部楼层 |阅读模式

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

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

x

>>> list1 = [1,[1,2,['xiaojiayu']],3,5,8,13,18]
>>> list1[1][2][0] = 'xiaoyouyu'
>>> list1
[1, [1, 2, ['xiaoyouyu']], 3, 5, 8, 13, 18]
>>> list1[1][2] = ['xiaowangba']
>>> list1
[1, [1, 2, ['xiaowangba']], 3, 5, 8, 13, 18]
>>>

这两种方式修改列表中xiaojiayu,有什么不同吗?
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2017-6-23 14:23:41 | 显示全部楼层
没有区别
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-6-23 14:46:42 | 显示全部楼层
  1. >>> import dis
  2. >>> def A():
  3.         list1 = [1,[1,2,['xiaojiayu']],3,5,8,13,18]
  4.         list1[1][2][0] = 'xiaoyouyu'
  5.         list1

  6. dis.dis(A)
  7.   2           0 LOAD_CONST               1 (1)
  8.               2 LOAD_CONST               1 (1)
  9.               4 LOAD_CONST               2 (2)
  10.               6 LOAD_CONST               3 ('xiaojiayu')
  11.               8 BUILD_LIST               1
  12.              10 BUILD_LIST               3
  13.              12 LOAD_CONST               4 (3)
  14.              14 LOAD_CONST               5 (5)
  15.              16 LOAD_CONST               6 (8)
  16.              18 LOAD_CONST               7 (13)
  17.              20 LOAD_CONST               8 (18)
  18.              22 BUILD_LIST               7
  19.              24 STORE_FAST               0 (list1)

  20.   3          26 LOAD_CONST               9 ('xiaoyouyu')
  21.              28 LOAD_FAST                0 (list1)
  22.              30 LOAD_CONST               1 (1)
  23.              32 BINARY_SUBSCR
  24.              34 LOAD_CONST               2 (2)
  25.              36 BINARY_SUBSCR
  26.              38 LOAD_CONST              10 (0)
  27.              40 STORE_SUBSCR

  28.   4          42 LOAD_FAST                0 (list1)
  29.              44 POP_TOP
  30.              46 LOAD_CONST               0 (None)
  31.              48 RETURN_VALUE
复制代码

  1. >>> def B():
  2.          list1 = [1,[1,2,['xiaojiayu']],3,5,8,13,18]
  3.          list1[1][2] = ['xiaowangba']
  4.          list1

  5.          
  6. >>> dis.dis(B)
  7.   2           0 LOAD_CONST               1 (1)
  8.               2 LOAD_CONST               1 (1)
  9.               4 LOAD_CONST               2 (2)
  10.               6 LOAD_CONST               3 ('xiaojiayu')
  11.               8 BUILD_LIST               1
  12.              10 BUILD_LIST               3
  13.              12 LOAD_CONST               4 (3)
  14.              14 LOAD_CONST               5 (5)
  15.              16 LOAD_CONST               6 (8)
  16.              18 LOAD_CONST               7 (13)
  17.              20 LOAD_CONST               8 (18)
  18.              22 BUILD_LIST               7
  19.              24 STORE_FAST               0 (list1)

  20.   3          26 LOAD_CONST               9 ('xiaowangba')
  21.              28 BUILD_LIST               1
  22.              30 LOAD_FAST                0 (list1)
  23.              32 LOAD_CONST               1 (1)
  24.              34 BINARY_SUBSCR
  25.              36 LOAD_CONST               2 (2)
  26.              38 STORE_SUBSCR

  27.   4          40 LOAD_FAST                0 (list1)
  28.              42 POP_TOP
  29.              44 LOAD_CONST               0 (None)
  30.              46 RETURN_VALUE
复制代码


非要说有什么不同的话,以上就是不同。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-6-23 15:22:37 | 显示全部楼层

我喜欢这个答案
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-22 02:03

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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