找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 165|回复: 3

[求助] 求助求助,小白求大神指导下

1

主题

1

帖子

1

积分

贫民

积分
1
wx_R2dbLBu8 发表于 2020-7-8 08:37:56 | 显示全部楼层 |阅读模式
我把代码摘录如下,请大神简要指点下,为啥不能通过以下代码来实现变更列表中的值?

aliens=['red','green','blue','orga']
for alien in aliens[0:1]:
    alien='oo'
print(aliens)
以上代码的打印结果是['red', 'green', 'blue', 'orga']而我想要的打印结果是['oo', 'oo', 'blue', 'orga']
回复

使用道具 举报

0

主题

652

帖子

652

积分

圣骑士

积分
652
sheeboard 发表于 2020-7-13 23:44:31 | 显示全部楼层
for i in range(2):
    aliens[i]='oo'
回复 支持 1 反对 0

使用道具 举报

0

主题

3

帖子

3

积分

贫民

积分
3
275855523 发表于 2020-7-14 12:16:05 | 显示全部楼层
for alien in aliens[0:1]:
    alien='oo'
这句话的意思是把aliens[0:1]对应的值按顺序每次赋给序列之外的参数alien
然后alien='oo'只是单纯改变alien的值,而不是改变序列aliens里面的东西
想按照你的想法改变里面的值可以按照楼上的老哥写的那样,也可以这样按照特定的对应来写一下条件
回复 支持 反对

使用道具 举报

0

主题

652

帖子

652

积分

圣骑士

积分
652
sheeboard 发表于 2020-7-14 12:29:04 | 显示全部楼层
275855523 发表于 2020-7-14 12:16
for alien in aliens[0:1]:
    alien='oo'
这句话的意思是把aliens[0:1]对应的值按顺序每次赋给序列之外的 ...

切片是copy内容,不改变原对象。
回复 支持 反对

使用道具 举报

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

本版积分规则

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