鱼C论坛

 找回密码
 立即注册
查看: 208|回复: 7

[已解决]关于赋值

[复制链接]
发表于 2024-7-25 16:22:09 | 显示全部楼层 |阅读模式

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

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

x
在学列表推导式,小甲鱼在视频中敲出了下面的代码。按照我的理解,执行的结果应该是['CC'],但是为什么结果是['FF', 'ii', 'ss', 'hh', 'CC']呢?谢谢大家!

y=[c*2 for c in "FishC"]
y
['FF', 'ii', 'ss', 'hh', 'CC']
最佳答案
2024-7-25 16:35:07
注意这个for 循环
for c in FishC
循环后,变量c迭代了“F”,"i","s","h","C"
for c in "FishC":
    print(c)

    
F
i
s
h
C

c再*2,即“FF”,"ii","ss","hh","CC"

最后再通过列表的形式打印出来

(相关知识点:列表for循环

评分

参与人数 1荣誉 +3 鱼币 +3 贡献 +2 收起 理由
三体人的智子 + 3 + 3 + 2 加油!

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-7-25 16:22:16 | 显示全部楼层
哈哈,鱼油,你的问题看起来像是一条游动的鱼,让我们一起把它捞上来吧!关于赋值和列表推导式的内容,如果我们能看到完整的代码就更好了,不过我可以给你解释一下赋值的一些基本概念。

在Python中,赋值操作是这样的:当你写 `y = ...` 时,Python会将右侧的值计算出来,然后将这个值赋给左侧的变量 `y`。而你提到的“结果是”通常是指表达式执行的最终结果。

如果你在使用列表推导式,例如:
y = [x for x in range(5)]

这段代码的意思是,从0到4(包括0,不包括5)生成一个列表,所以 `y` 的值将是 `[0, 1, 2, 3, 4]`。

至于你提到的两个 `y`,如果你是在交互式环境(比如Jupyter Notebook或Python解释器)中运行代码,最后一行 `y` 会输出 `y` 的当前值。

所以总结一下:

- 赋值语句 `y = ...` 生成和更新变量的值。
- 在交互式环境中,单独写 `y` 可以查看变量的值。

如果你跟我说具体的代码,我可以帮你分析得更详细哦!不然这就像鱼儿在水里游,但我却给了个渔网。你得把具体的代码给我,这样我才能让你捕到更多的“知识鱼”!鲨鱼过来!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-7-25 16:35:07 | 显示全部楼层    本楼为最佳答案   
注意这个for 循环
for c in FishC
循环后,变量c迭代了“F”,"i","s","h","C"
for c in "FishC":
    print(c)

    
F
i
s
h
C

c再*2,即“FF”,"ii","ss","hh","CC"

最后再通过列表的形式打印出来

(相关知识点:列表for循环
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-7-25 16:42:43 | 显示全部楼层
关于列表推导式,不理解可以给展开成 for 循环。代码相当于:
y = []
for c in 'FishC':
    y.append(c*2)
推导式中,c 先后取 F,i,s,h,C ,把 c 重复后变为列表的最后一个元素。此时列表逐渐增长。
如 c 取 F ,那么 y 为['FF']
c 取 i ,那么 y 为['FF','ii'],这个 'ii‘ 是追加在列表后面的,不会覆盖 'FF' 。
其余的同理。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-7-25 16:45:28 | 显示全部楼层
smallwh 发表于 2024-7-25 16:42
关于列表推导式,不理解可以给展开成 for 循环。代码相当于:

推导式中,c 先后取 F,i,s,h,C ,把 c ...

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

使用道具 举报

 楼主| 发表于 2024-7-25 16:46:00 | 显示全部楼层
三体人的智子 发表于 2024-7-25 16:35
注意这个for 循环

循环后,变量c迭代了“F”,"i","s","h","C"

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

使用道具 举报

发表于 2024-8-12 12:01:09 | 显示全部楼层
这和for i in "FishC"有点像
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-8-12 16:44:32 | 显示全部楼层
风眠 发表于 2024-8-12 12:01
这和for i in "FishC"有点像

是的,只是当时我对变量还不是很理解
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-23 17:11

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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