参考:https://www.cnblogs.com/andywenzhi/p/7453374.html?tdsourcetag=s_pcqq_aiomsg(写的蛮好)

python中的赋值操作“=”和C++中的赋值操作"="还是有很大区别的,这点需要注意!

比如例1:

C++和python操作后会得到同样结果,但是两者在PC中的操作其实不同;

(1)python:代码在内存中的操作示意图:

首先内存会为3创建一个数据单元,再让b指向这个单元;然后b+5得到8,内存又会为这个8创建一个数据单元,再让b指向这个单元(b指向的内存地址发生了改变!);

(2)C++:代码在内存中的操作示意图:

首先内存会创建一个int类,并分配对应的数据单元,类名为b,b类中存储数据3,然后b+3则对b类中的数据3加5变成8(b指向的内存地址没有发生改变!)

由上可知:

(1)C++通过操作内存地址而间接操作数据,数据处于被动地位;Python则是直接操控数据,数据处于主动地位,变量只是作为一种引用的关系存在,而不再拥有存储的功能;

(2)可以简单地认为“数据在python中被称为对象(object)”,对象不能被覆盖,也不能被直接销毁(python中有垃圾回收机制来回收不用地对象,比如引用计数机制);

了解了上面,再说一个例子就好理解了,见下面:

这里要注意:对象分为可变对象(单个元素)和不可变对象(集合:list、tuple、dict等),所以会有上面地输出信息;

python中的赋值操作和复制操作

之前一直写C#,变量之间赋值相当于拷贝,修改拷贝变量不会改变原来的值.但是在python中发现赋值操作本质是和C++中的引用类似,即指向同一块内存空间.下面通过一个例子说明: p=[0,1,2,3,4 ...

python中的赋值操作与C语言中的赋值操作中的巨大差别

首先让我们来看一个简单的C程序: a = ; b = a; b = ; printf("a = %d, b = %d\n", a, b); 相信只要学过C语言, 不用运行程序便能知 ...

【转】Python中的赋值、浅拷贝、深拷贝介绍

这篇文章主要介绍了Python中的赋值.浅拷贝.深拷贝介绍,Python中也分为简单赋值.浅拷贝.深拷贝这几种"拷贝"方式,需要的朋友可以参考下   和很多语言一样,Python中 ...

python中的“赋值与深浅拷贝”

Python中,赋值与拷贝(深/浅拷贝)之间是有差异的,这主要源于数据在内存中的存放问题,本文将对此加以探讨. 1 赋值(添加名字) 赋值不会改变内存中数据存放状态,比如在内存中存在一个名为data的 ...

python中的日志操作和发送邮件

1.python中的日志操作 安装log模块:pip install nnlog 参数:my_log = nnlog.Logger('server_log.log',level='debug',bac ...

Python中的赋值和拷贝

赋值 在python中,赋值就是建立一个对象的引用,而不是将对象存储为另一个副本.比如: >>> a=[1,2,3] >>> b=a >>> c= ...

python中OS模块操作文件和目录

在python中执行和操作目录和文件的操作是通过内置的python OS模块封装的函数实现的. 首先导入模块,并查看操作系统的类型: >>> import os os.name # ...

Python中的字符串操作总结(Python3.6.1版本)

Python中的字符串操作(Python3.6.1版本) (1)切片操作: str1="hello world!" str1[1:3] <=> 'el'(左闭右开:即是 ...

Python中的json操作

Python中的json操作 标签(空格分隔): python 编码 json 字符串前缀问题 字符串前缀可以有r,u r:表示原始(raw)字符串,比如'\n'不会被转义.常用于正则. u:表示un ...

随机推荐

JavaScript的&equals;&equals;和&equals;&equals;&equals;运算符

JavaScript提供两个相等运算符:==和 ===.      简单说,它们的区别是相等运算符( ==)比较两个值是否相等,严格相等运算符( ===)比较它们是否为“同一个值”.如果两个值不是同一 ...

WCF X&period;509验证

1.证书的制作 makecert.exe -sr LocalMachine -ss My -a sha1 -n CN=ParkingServer -sky exchange -pe makecert. ...

ubuntu系统无法访问无法磁盘最佳解决办法

出现如下错误: Error mounting /dev/sda8 at /media/fzh/System: Command-line `mount -t "ntfs" -o &q ...

WCF客户端承载

http://www.cnblogs.com/wengyuli/archive/2010/12/27/1918109.html参考 Hi victory,   你提出的问题很好,这个问题,相信很多人学 ...

TinyXML 在vs2010 VC&plus;&plus;使用

1.下载TinyXML  http://www.grinninglizard.com/tinyxml/  解压缩,将以下六个文件复制到您的工程项目文件(跟您的cpp文件在一个目录下)中 tinyxml ...

javascript权威指南笔记--javascript语言核心(二)

1.函数作用域:在函数内声明的所有变量在函数体内始终是可见的.这意味着在变量声明之前甚至已经可用. *“声明提前”:javascript函数里声明的所有变量(但不涉及赋值)都被提前至函数的顶部. fu ...

Python基础09 面向对象的进一步拓展

作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 我们熟悉了对象和类的基本概念.我们将进一步拓展,以便能实际运用对象和类. 调用类的 ...

shell脚本应用(5)--实用脚本片段

校验参数 if [ "$#" -ne 1 ] then echo "Incorrect number of arguments" echo "Usag ...

InnoDB表要建议用自增列做主键

InnoDB引擎表是基于B+树的索引组织表(IOT): 每个表都需要有一个聚集索引(clustered index): 所有的行记录都存储在B+树的叶子节点(leaf pages of the tre ...

Java中Lambda表达式的使用(转)

https://www.cnblogs.com/franson-2016/p/5593080.html 简介(译者注:虽然看着很先进,其实Lambda表达式的本质只是一个"语法糖" ...

python中怎么赋值,python中的赋值操作相关推荐

  1. python字符串赋值与java区别_java和python细节总结和java中string 的+操作

    //JAVA中对arrayList的初始化,能够分配空间,不能之间让一个ArrayList赋值给另外一个ArrayList,这样是引用赋值,当一个改变时候,另外一个也改变 List tmp = new ...

  2. html中如何定义python变量,python怎么定义变量?如何给变量赋值?

    很多小伙伴们在刚接触 python 的时候会了解到 python 的一个特点:他是一门弱类型语言.然后陷入沉思:没有了变量声明,那么 python 要怎么定义变量呢?python 的变量又该如何使用呢 ...

  3. Arcgis 中栅格计算器赋值Python代码(二)

    上次分享了一次python代码,但是上次计算的类型是根据value数值,给name字段赋值汉字名称,但是有的同学可能会遇到这种问题,就是汉字命名的土地利用分类,在一些软件计算中并不能用,必须赋值为En ...

  4. python print 输出赋值_Python中赋值和print笔记

    1.在python2.6总nonlocal不可用 2.python中还是可以出现";"的,例如:x = 3 ; y = 5 ; print(x+y) 3.python中的集中赋值: ...

  5. python 二维数组赋值_Python中多个变量的灵活处理

    我们都知道Python是一个非常灵活的语言,以至于如果它不是你的第一门语言,你会发现它总能给你各种各样的惊喜,让你忍不住惊叹:woc,还有这种操作.尤其我在系统地学习Python之前是Java后端出身 ...

  6. python布尔型变量错误的赋值_Python中布尔变量的值为( )

    [单选题]x 的 y 次方(xy) 以下表达式正确的是________ [多选题]以下关于 Python 字符串的描述中,正确的是( ) [多选题]下列表达式的值为False的是( ) [其它]返回 ...

  7. python中的变量和数组的赋值和地址的关系

    若程序中只是使用数据的值,那么和地址没什么关系,但若做为程序检测某个地址中的数据变化,则可能会出现问题 同名变量赋值 变量被常量赋值,会修改变量的地址,变量之间赋值,会将值和地址都赋值 a=448 b ...

  8. python中mod运算符_Python中的数学运算操作符使用进阶

    Python中对象的行为是由它的类型 (Type) 决定的.所谓类型就是支持某些特定的操作.数字对象在任何编程语言中都是基础元素,支持加.减.乘.除等数学操作. Python的数字对象有整数和浮点数, ...

  9. python中while嵌套循环_python中的while循环

    循环 目标 程序的三大流程  while 循环基本使用  break 和 continue  while 循环嵌套 01. 程序的三大流程 在程序开发中,一共有三种流程方式: 顺序 -- 从上向下,顺 ...

  10. python json数据格式数组内元素递增赋值_python深浅复制,类型转换, json操作,数组操作...

    python深浅复制 import copy a = [1, 2, 3, 4, ['a', 'b']] #原始对象 b = a #赋值,传对象的引用 c = copy.copy(a) #对象拷贝,浅拷 ...

最新文章

  1. 易语言模拟键盘(ctrl+v)_键盘快捷键使用大全
  2. Http client 请求
  3. vuejs和webpack项目(VueComponent)初尝试——瀑布流组件
  4. 从微信公众平台·小程序内测邀请函看应用号动向
  5. 网络安全人才的发展情况是怎么样的呢?快上车,带你了解
  6. android 原生分享界面_索尼PlayStation App获得语音聊天功能和新的UI界面
  7. Leetcode 17. Letter Combinations of a Phone Number(python)
  8. 编译后错误提示为pls-00103:出现符号在需要下列之一时:begin case declare
  9. 微型计算机控制系统常用报警方式,微型计算机控制技术复习资料.docx
  10. linux创建新用户及权限
  11. 2018年9月8日 笔试小结
  12. 阶段3 3.SpringMVC·_03.SpringMVC常用注解_7 ModelAttribute注解
  13. 分享如何设计调查问卷怎样分析问卷数据!
  14. 在windows电脑上配置kubectl远程操作kubernetes
  15. java onfocus_[Java教程]onfocus和onblur应用代码实例
  16. vue 双花括号里面使用方法
  17. 荣耀80Pro直屏版和荣耀80Pro区别?
  18. 无穷小陪伴老翁走人生
  19. C语言足球比赛6场,一场激烈的足球赛作文600字
  20. 单片机 怎调用显示屏字库_51单片机示波器制作(12864显示带字库)

热门文章

  1. 4.5.5 路由器的构成
  2. 新年趣事之打牌【01背包】【输出方案】
  3. ROS下打开不了笔记本外接摄像头问题解决
  4. 3.Java Web之JavaScript实战
  5. 适合新手:手把手教你用Go快速搭建高性能、可扩展的IM系统(有源码)
  6. 手机图片怎么转pdf格式?这几个图片转换方式了解一下
  7. Swing 各种组件组合大全
  8. 微博开放平台应用申请(Android签名填写规则)
  9. 为什么不胜任的人,反而获得晋升?
  10. 计算机三级和四级能一块考,计算机三级和四级可以一起考吗