Python 的 for .in loop

对于这个代码:为什么x=['ab','cd']x.append(x[-1].upper())print(x)---------->结果是['ab','cd','CD']而... 对于这个代码:
为什么
x = ['ab','cd']
x.append(x[-1].upper())
print(x) ---------->结果是 ['ab','cd','CD']
而 x = ['ab','cd']
for i in x:
i.upper()
print(x) ----------->结果是['ab','cd']
他不是upper()了吗?
不是很懂 谢谢了
展开
 我来答
阳光的雷咩咩
2016-11-06 · TA获得超过1.4万个赞
知道大有可为答主
回答量:2.3万
采纳率:66%
帮助的人:7854万
展开全部
i.upper()这个语句应该没起任何作用。毕竟没赋值啊。那你前面干嘛用了append后面不用?要不你试试 i = i.upper()
更多追问追答
追问
我是这样理解的..
他不是 for i in x 了吗?
那么每次轮到一个item,他都会来一个 i.upper()啥的
这不会什么吗?毕竟是在 x 这个列表的item发生变化了啊....
追答

.upper()方法只能得到一个值,不能改变原值,你自己测试一下不就知道了。

比如

a = 'a'
a.upper()
print(a)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式