鱼C论坛

 找回密码
 立即注册
查看: 2256|回复: 1

[已解决]家人们,这是怎么回事,求解呀

[复制链接]
发表于 2022-7-21 17:55:46 | 显示全部楼层 |阅读模式
1鱼币
两个代码只有x=y=[]和x=[],y=[]的区别,有什么影响吗?

a=eval(input("输入:"))
x=[]
y=[]
for i in a:
    print (i)
    if int(i)%2==0:
        y.append(i)      
    else :
        x.append(i)
        print (x)
x1=sorted(x)
y1=sorted(y)
z=x1+y1
print (z)

结果:
输入:[1,5,8,3]
1
[1]
5
[1, 5]
8
3
[1, 5, 3]
[1, 3, 5, 8]

a=eval(input("输入:"))
x=y=[]
for i in a:
    print (i)
    if int(i)%2==0:
        y.append(i)
    else :
        x.append(i)
        print (x)
x1=sorted(x)
y1=sorted(y)
z=x1+y1
print (z)

结果:
输入:[1,5,8,3]
1
[1]
5
[1, 5]
8
3
[1, 5, 8, 3]
[1, 3, 5, 8, 1, 3, 5, 8]
最佳答案
2022-7-21 17:55:47
当然有区别
  1. >>> x = []
  2. >>> y = []
  3. >>> id(x)
  4. 7158400
  5. >>> id(y)
  6. 7516968
  7. >>> x=y=[]
  8. >>> id(x)
  9. 11521040
  10. >>> id(y)
  11. 11521040
  12. >>>
复制代码

可以看到,如果是x=[],y=[]的话,他们的地址是不同的,也就是说是不同的对象
但如果是x=y=[]的话,他们的地址就是相同的,是同一个对象

最佳答案

查看完整内容

当然有区别 可以看到,如果是x=[],y=[]的话,他们的地址是不同的,也就是说是不同的对象 但如果是x=y=[]的话,他们的地址就是相同的,是同一个对象
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-7-21 17:55:47 | 显示全部楼层    本楼为最佳答案   
当然有区别
  1. >>> x = []
  2. >>> y = []
  3. >>> id(x)
  4. 7158400
  5. >>> id(y)
  6. 7516968
  7. >>> x=y=[]
  8. >>> id(x)
  9. 11521040
  10. >>> id(y)
  11. 11521040
  12. >>>
复制代码

可以看到,如果是x=[],y=[]的话,他们的地址是不同的,也就是说是不同的对象
但如果是x=y=[]的话,他们的地址就是相同的,是同一个对象
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-30 22:31

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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