python中,x=[1,2],执行y=x[:],里面的x[:]什么意思 5
原题是这样的:已知列表x=[1,2],执行语句y=x[:]后,表达式id(x)==id(y)的值为Flase。不明白为什么。里面的x[:]什么意思...
原题是这样的:已知列表x=[1,2],执行语句y=x[:]后,表达式id(x)==id(y)的值为Flase。不明白为什么。里面的x[:]什么意思
展开
5个回答
展开全部
python中,x=【1,2】,执行y=x【:】,里面的x【:】等价于[1,2] 。
Python由荷兰数学和计算机科学研究学会的Guido van Rossum 于1990 年代初设计,作为一门叫做ABC语言的替代品,Python提供了高效的高级数据结构,还能简单有效地面向对象编程。Python语法和动态类型,以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的编程语言。
扩展资料:
Python的设计目标之一是让代码具备高度的可阅读性。它设计时尽量使用其它语言经常使用的标点符号和英文单字,让代码看起来整洁美观。它不像其他的静态语言如C、Pascal那样需要重复书写声明语句,也不像它们的语法那样经常有特殊情况和意外。
Python开发者有意让违反了缩进规则的程序不能通过编译,以此来强制程序员养成良好的编程习惯。并且Python语言利用缩进表示语句块的开始和退出(Off-side规则),而非使用花括号或者某种关键字。增加缩进表示语句块的开始,而减少缩进则表示语句块的退出。缩进成为了语法的一部分。
2019-05-10 · 知道合伙人软件行家
关注
展开全部
y=x[:] 等价于 y =[1,2] ,但不等价 y = x (这个是引用,id(x)==id(y) 才会是True)
这个你要去补一下“可变、不可变变量”的知识点。
这个你要去补一下“可变、不可变变量”的知识点。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
x[:]表示x的所有元素。y是x的浅拷贝,会使用新的内存地址来存放拷贝值,所以表达式id(x)==id(y)的值为Flase。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
y=x[:]相当于对x列表进行切片,重新生成一个新列表绑定到y这个名字(对象)上,因此区别于浅复制绑定名字会是同一个内存地址。y=[:]这个操作有类似深复制的结果。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
x=y=1
或者
x=(y==1)
你写的非法,无法解释,作者说这样非法就非法,能有什么办法。不要按照`你认为可以的`去写代码,
要按照`可以这么写的`去写代码,好吧。规则是别人定的,你要做的是遵守别人的规则,才能不报错
或者
x=(y==1)
你写的非法,无法解释,作者说这样非法就非法,能有什么办法。不要按照`你认为可以的`去写代码,
要按照`可以这么写的`去写代码,好吧。规则是别人定的,你要做的是遵守别人的规则,才能不报错
追问
x[:]有别的意思吗,和x[0]或者x[1]意思相同吗
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询