【python】不同的数据类型赋值区别

python之浅拷贝深拷贝的区别 赋值 在我们开始讨论浅拷贝深拷贝的区别之前,首先我们必须清楚什么是赋值? 在Python中,所谓的赋值实际上就是对象引用的传递而已,当创建一个对象的时候,再赋值给另外一个变量的时候,并不是赋值给另一个变量。而是把这个变量在地址空间的id地址值传递给另一个变量,简单的说就是拷贝了这个对象的引用。看图片,可能比较容易理解。 从图中,我们很容易的看到,ab两个变量在地址空间中是一样。后来,我们又给... 阅读详情

常见的数据类型,整型,字符串,列表等赋值有些区别。

整型【例题】

a = 1
b = a
a = 3
print("a=",a,"b=",b)     #a= 3 b= 1
总结:整型类赋值,独立,相互不影响;

字符串

str_01 = "reliability~"
str_02 = str_01
str_02 = "hello"
print("str_01=",str_01,"\nstr_02=",str_02)#str_01= reliability~  str_02= hello

总结:字符串类重新赋值,独立相互不影响;

列表

list_01 = [1,2,3,4]
list_02 = list_01
list_01.append('5')
print("list_01=",list_01,"\nlist_02=",list_02)#list_01= [1, 2, 3, 4, '5'] list_02= [1, 2, 3, 4, '5']

总结:如果不是重新赋值的话,只是在原来列表的基础上,加元素,list_01和list_02是相等的,因为他们都同时指向了一个列表,list_02=list_01 表达的是,他们同时指向了[1,2,3,4]的索引。
但是如果我们再变一下

重新赋值的方式
list_01 = [1,2,3,4]
list_02 = list_01
list_01 = [5,4,3,2,1]
print(“list_01=”,list_01,"\nlist_02=",list_02)#list_01= [5, 4, 3, 2, 1] list_02= [1, 2, 3, 4]

总结:重新赋值的方式,则很容易发现,list_02=list_01因为拿到了[1,2,3,4]的索引,所以一直没变。但是list_01重新赋值了,所以拿到了新的索引[5,4,3,2,1]。
所以重新赋值 跟列表追加,删除(原始列表索引不变),是有区别的。

【数据结构】汉诺塔问题(丰富图解) 经典汉诺塔问题,丰富图解,助你理解。 阅读详情

相关推荐

Xilinx平台SRIO介绍(二)SRIO IP核基础知识

使用SRIO IP核必须掌握的基础知识! 理解了这篇,剩下的只是代码罢了。

数字IC/FPGA杂货铺,找一找,或许有你想要的~ 4万+

第2章 Python编程基础知识 第2.1节 简单的Python数据类型、变量赋值及输入输出...

第三节 简单的Python数据类型、变量赋值及输入输出 Python是一门解释性语言,它的执行依赖于Python提供的执行环境,前面一章介绍了Python环境安装、WINDOWS系列Python编辑运行界面等内,这节就开始真正的语言学习了。本节介绍的内容是为了大家...

weixin_30556959的博客 411

python中的数组赋值与拷贝的区别详解

今天小编就为大家分享一篇python中的数组赋值与拷贝的区别详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

Python -- 基本数据类型数据类型转换、对象引用、拆包式赋值

基本数据类型 1. 数值类型 1.1 整数 1.2 浮点数 1.3 复数 数据类型转换 对象引用

天行健 君子以自强不息,地势坤 君子以厚德载物。 1569

python赋值操作浅析

python中Numbers(数字),String(字符串),List(列表),Tuple(元组),Dictionary(字典),Set(集合)赋值操作,传参分析

weixin_46359183的博客 2304

Python基础】数据类型

介绍 在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型。 变量是存储在内存中的值,这就意味着在创建变量时会在内存中开辟一个空间。 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。 因此,变量可以指定不同数据类型,这些变量可以存储整数,小数或字符。 内容 Python有六种数据类型 Number(数字) String(字符串) List(列表) Tuple(元组) Set(集合) Dictionary(字典) Python3 的六

qq_49893586的博客 1298

Python赋值及其数据类型

Python赋值Python可同时赋相同值: a=b=c=10 python同时赋不同值: a,b,c=1,2,3 python数据类型: 不可变数据 数字(number:int、float、boolean)** >>> a=True >>> print(a) True >>> type(a)判断类型 <class 'bool'> >>>del a,c 删除a,c数据 字符串(string): **元组(tupl

weixin_44828960的博客 1490

Python中变量的赋值“=”问题

对于python中变量赋值问题,这篇文章讲的挺好https://www.jianshu.com/p/521bdd67790e 尤其是关于C语言赋值区别,即python是针对数据,而C语言是针对内存 写在前面 python中的“变量”是一个可以被赋值的广义对象,更确切地说是“引用”,它仅仅只是一个标签,其作用就是将它与内存中的某个实际对象(狭义对象)相联系,从而通过操作这个标签来操作实际对象。 一个变量不能孤立存在,创立之时就必须将其指向内存中的某个实际对象(即用‘=’操作),此时变量的类型、内存

yimenren的博客 2252

Python——赋值与深浅拷贝

初学编程的小伙伴都会对于深浅拷贝的用法有些疑问,今天我们就结合python变量存储的特性从内存的角度来谈一谈赋值深浅拷贝~~~

m0_72557783的博客 892

python 赋值_python编程自学笔记变量赋值数据类型格式化输出

python编程自学笔记变量数赋值据类型格式化输出Python自学笔记变量 数据类型 字符串 格式化1、变量变量的定义给变量赋值 name是一个变量,把“***”赋值给了name这个变量我们可以使用number这个收纳盒来记录编号,price收纳盒来记录单价在Python中,这个“盒子”被称为变量,你可以在“盒子”里放置任何你想存放的内容,而往里装东西的过程,被称为赋值。变量的赋值打印变量里的...

weixin_39880479的博客 572

PythonNumpy中的赋值、浅拷贝与深拷贝

文章目录1. Python中的不可变数据类型可变数据类型2. Python中的赋值与深浅拷贝2.1 赋值2.2 浅拷贝2.3 深拷贝3. Numpy ndarray的赋值与深浅拷贝3.1 赋值3.2 浅拷贝3.3 深拷贝4. 总结Reference 1. Python中的不可变数据类型可变数据类型 在正式讨论Python中的赋值、浅拷贝、深拷贝之前,我们先来了解一下Python中的不可变数据类型可变数据类型。 参考文献[1]中给出的 不可变数据类型:当该数据类型的对应变量的值发生了改变,那么它对应的内

Graduate2015的博客 4173

python之copy()与deepcopy()区别

背景 为什么要研究这个问题? 之所以提出这个问题,是因为有这样一个场景,我需要使用两个列表ls_old与ls_new分别记录某一组状态在执行前后的值,以此判断执行是否成功。若执行成功,则ls_old=ls_new以保存当前状态 因为采用的是=赋值方式,当执行ls_new.clear()时,ls_old也被清空了 于是这引起了我的兴趣。因为之前学习C++的时候对深浅复制以及指针、引用,有过系统的学习,所以猜想python实现=的方式,应该是创建了引用。但这需要去了解它的实现方式才能证实 看官方解释 官方关

七哥地盘 546

Python赋值引用

1、Python 数组的赋值引用 问题:数组传参,函数内数组修改,主函数数组也发生修改(引用导致) def Change(a): a[0]=10 if __name__=="__main__": a=[1,2,3,4] Change(a) print(a) #[10, 2, 3, 4] list,numpy总结(引用赋值) import num...

风轻云淡 1466

python列表赋值问题

数字的赋值 a = 1 b = a b = 2 print(id(a)) print(id(b)) print(a,b) 输出结果如下: 140714399487648 140714399487680 1 2 从地址可以看到ab并不是指向一个地址的变量,因此当改变b的值时,a的值并没有发生改变 字符串的赋值 a = 'I\'m a student' b = a b = 'I\'m a teacher' print(id(a)) print(id(b)) print(a,b,sep='\n') 输出

fytfhg的博客 378

一篇了解python中的赋值、浅拷贝深拷贝

前言 赋值仅仅是拷贝了对象的引用,无论数据是可变还是不可变的 浅拷贝与深拷贝,看被拷贝的数据是不可变数据类型还是可变数据类型 可变数据类型列表、字典、集合,如果修改可变数据类型,数据的内存地址不变 不可变数据类型:元组、数字、字符串,如果修改不可变的数据类型,得到到的将是一个行的数据,两个数据的内存地址不一样 赋值 a = 'stirng' # 不可变数据类型 b = a print(i...

qq_44275733的博客 259

python同步赋值_跟Alex学Python之- 你真的了解Python的变量赋值原理么?

初学编程的小伙伴都会对于深浅拷贝的用法有些疑问,今天我们就结合python变量存储的特性从内存的角度来谈一谈赋值深浅拷贝~~~预备知识一——python的变量及其存储在详细的了解python赋值、copydeepcopy之前,我们还是要花一点时间来了解一下python内存中变量的存储情况。在高级语言中,变量是对内存及其地址的抽象。对于python而言,python的一切变量都是对象,变量的存...

weixin_39947908的博客 100

深度解析Python的拷贝 Python直接赋值 Python浅拷贝 Python深拷贝

深度解析Python的拷贝 Python直接赋值 Python浅拷贝 Python深拷贝

storyfull 483

python 赋值 浅copy_python赋值浅拷贝与深拷贝

初学编程的小伙伴都会对于深浅拷贝的用法有些疑问,今天我们就结合python变量存储的特性从内存的角度来谈一谈赋值深浅拷贝~~~预备知识一——python的变量及其存储在详细的了解python赋值、copydeepcopy之前,我们还是要花一点时间来了解一下python内存中变量的存储情况。在高级语言中,变量是对内存及其地址的抽象。对于python而言,python的一切变量都是对象,变量的存...

weixin_39917894的博客 119

Python深浅拷贝赋值区别

赋值、深拷贝、浅拷贝一样。# 下面三个等价可变类型:赋值不会开辟新空间,深拷贝浅拷贝会开辟新空间。lst2 = lst# 赋值# 浅拷贝print(id(lst) == id(lst3)) # False 开辟新空间print(id(lst[1]) == id(lst3[1])) # True 内部元素指向同一地址# 深拷贝print(id(lst[1]) == id(lst4[1])) # False 内部元素指向不同地址。

田乐蒙的博客 833

python学习:可变与不可变数据类型赋值,浅拷贝深拷贝

可变与不可变数据类型以及赋值’=’ a = [x for x in range(5)] b = a c = 1 d = c print('a', a, id(a)) print('b', b, id(b)) print('c', c, id(c)) print('d', d, id(d)) print('1*********************1') a += [5] c += 1 pri...

qq_39265082的博客 546

【8484】通达信尾盘量化战法全套指标.tn6

【8484】通达信尾盘量化战法全套指标.tn6

上一篇: 【python】关于encode(),decode()的一些总结
一念花开落天涯
博客等级 码龄6年 0粉丝 · 6原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值