c++ 静态变量赋值_Python变量及常量解释说明

03a69310fe007e3b876f376daa959d72.gif

8c308f9c970e2225fc0b908895fa1cfa.png

变量

(1)在计算机程序中,变量不仅可以是数字,还可以是任意数据类型,
变量子啊程序中就是一个变量名表示的,变量名必须是大小写英文,数字,和"_"的组合,切不能以数字开头.

a = 1  #变量a是一个整数
  • 1


b = "shuai" #变量b是一个字符串
  • 1


c = True #变量c是一个布尔值True
  • 1

(2)在python中,等号"="是赋值语句,可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的变量,例如:

a = 1 # a是整数
print(a)
a = 'A' # a变为字符串
print(a)
#赋值变量的时候,可以给一个变量赋值多次,最终赋值取决于最后一个赋值进去的值.
  • 1

  • 2

  • 3

  • 4

  • 5

(3)变量本身类型不固定的语言称之为**动态语言,与之相对的是静态语言**
静态语言在定义变量的时候必须指定变量类型,如果赋值的时候类型不匹配,就会报错.如:java是静态语言,赋值语句如下:(// 表示注释):

int a = 1 //a是整数类型变量 
a = "A" //错误:不能把字符串赋值给整形变量
  • 1

  • 2

和静态与言相比,动态语言更灵活,就是这个原因.

(4)赋值语句的等号不等同于数学的等号,例如:

x = 20
x = x + 2
  • 1

  • 2

在数学上理解x = x + 2 是不成立的,在程序中,赋值语句先计算右侧的表达式x + 2,得到结果12,再赋值给变量x,由于x之前的值是10,重新赋值后,x的值变成12.

变量在内存中的表示

当在写变量

name  = "zhang"
  • 1

时,python解释器干了两件事情:
(1)在内存中创建了一个'zhang'的字符串;
(2)在内存中创建了一个名为'name'的变量,并把这个'name'变量指向'zhang'

当然也可以把name变量的值再赋值给另一个变量name2,实际上是把变量name2指向变量name所指向的数据,如:

name = "zhang"
name2 = name
name = "shuai"
print(name2)
#最后打印的"name2"变量会是"zhang"还是"shuai"呢?
#答案是"shuai"
  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

一行一行的执行代码,看一下执行中发什么了什么?
执行name = "zhang",解释器创建了字符串"zhang"和变量"name",并把"name"指向"zhang"fdead01a69cda22d3594316ae83bda7b.png

执行name2 = name,解释器创建了变量"name2",并把name2指向name指向的字符串"zhang"77290b5af9ef03da6c0ffaec194cbcc2.png

执行name = "shuai",解释器创建字符串"shuai",并把name的指向改为"shuai",但name2并没有更改:5e053587369e83c798e4937c8b456df4.png
所以,最后打印变量name2的结果是"zhang"

常量

(1)所谓常量就是不变的变量,比如常用数学常数π就是一个常量,在python中通常用**变量名全部大写**来表示常量.

PAI = 3.1415926
  • 1

(2)但事实上PAI仍然是一个变量,python根本没有任何机制保证PAI不会改变,所以用全部大写的变量名只是一个标注或者是习惯用法,如果仍然要改变PAI变量值,也是没有人能拦住的!!!

05b94ac1dffaa15a81ecf3bf6e225155.gif

海普森(Hipeson)——专注计算&助力科研

面向各大高校、科研院所、企事业单位,提供高性能计算产品解决方案

7ee7fb74c74a84a1d8e7143f05b7d8e5.pngd7974c0d605701ddbba930514aaae13c.png

5597023632ebcf6dd2b862ea0bc01411.gif

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/257673.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Hibernate中session的clear(),flush(),evict()方法详解

2019独角兽企业重金招聘Python工程师标准>>> 一、Clear 方法 无论是Load 还是 Get 都会首先查找缓存(一级缓存) 如果没有,才会去数据库查找,调用Clear() 方法,可以强制清除Session缓存。例: pub…

40_自定义泛型方法及其应用

java的泛型不同于C的模板方法那么强大。java的泛型只停留在编译阶段,编译通过后泛型特征被擦除,主要因为保证jvm的效率。 用泛型知识,写一个交换数组元素的方法(此方法只适合于引用类型数组!因为int[]不会自动转为Integer[]!&…

SQL Server代理(11/12):维护计划作业

SQL Server代理是所有实时数据库的核心。代理有很多不明显的用法,因此系统的知识,对于开发人员还是DBA都是有用的。这系列文章会通俗介绍它的很多用法。 在这一系列的上一篇,我们看了使用代理帐户模仿Windows安全上下文完成作业步骤的工作。大…

XtraBackup全备与增量备份

一、XtraBackup安装 下载地址:http://www.percona.com/downloads/XtraBackup/XtraBackup-2.2.8/source/ 安装步骤: How to build XtraBackup on Linux Prerequisites -------------$ yum install cmake gcc gcc-c libaio libaio-devel automake autocon…

《大话设计模式》 国外资料

It is not easy to remember all design patterns. Here are some stories about design patterns which might help! Creational Singleton – Only one president in AmericaFactory – A factory that produces humanAbstract Factory – An abstract factory to produce CP…

python arcgis 图书_arcgis python

本书作者是GIS发方面的知名作者,曾著有《JavaScript构建Web和ArcGIS Server应用实战》(Building Web and Mobile ArcGIS Server Applications with JavaScript)一书。 本书内容易学易懂,帮助读者成为GIS发高手。《面向ArcGIS的Python脚本编程》是一本指导…

博客园客户端UAP开发随笔 -- App连接云端内容的桥梁:WebView

当你辛苦的从网上爬下来一篇文章之后,怎么在你的应用内展示这些包含HTML标记的文章?如果你使用的是Javascript开发应用,恭喜你,直接塞进页面就可以了,同时说明你很熟悉页面开发,而现在windows也支持这种方式…

C4.5

C4.5是机器学习算法中的另一个分类决策树算法,它是基于ID3算法进行改进后的一种重要算法,相比于ID3算法,改进有如下几个要点: 用信息增益率来选择属性。ID3选择属性用的是子树的信息增益,这里可以用很多方法来定义信息…

谈谈分布式事务之三: System.Transactions事务详解[下篇]

在前面一篇给出的Transaction的定义中,信息的读者应该看到了一个叫做DepedentClone的方法。该方法对用于创建基于现有Transaction对 象的“依赖事务(DependentTransaction)”。不像可提交事务是一个独立的事务对象,依赖事务依附于…

iOS开发系列--触摸事件、手势识别、摇晃事件、耳机线控

-- iOS事件全面解析 概览 iPhone的成功很大一部分得益于它多点触摸的强大功能,乔布斯让人们认识到手机其实是可以不用按键和手写笔直接操作的,这不愧为一项伟大的设计。今天我们就针对iOS的触摸事件(手势操作)、运动事件、远程控制…

python为什么忽然火了_为什么Python突然就火了起来了呢?

近日,TIOBE发布10月编程语言排行榜显示,15年来TIOBE指数的前8名一直保持不变,而Python正在成为一种新的大型语言。越来越多的企业在使用Python进行开发,越来越多的人正在加入Python程序员行列!TIOBE 10月编程语言排行榜前20名Pyth…

ARP扫描工具arp-scan

2019独角兽企业重金招聘Python工程师标准>>> ARP扫描工具arp-scan arp-scan是Kali Linux自带的一款ARP扫描工具。该工具可以进行单一目标扫描,也可以进行批量扫描。批量扫描的时候,用户可以通过CIDR、地址范围或者列表文件的方式指定。该工具…

elementui el-from 怎样显示图片_vue2.0使用weui.js的uploader组件上传图片(兼容移动端)...

本文已同步到专业技术网站 www.sufaith.com, 该网站专注于前后端开发技术与经验分享, 包含Web开发、Nodejs、Python、Linux、IT资讯等板块.最近在使用 vue2.0开发微信公众号网页 其中涉及到 选择图片, 图片的压缩上传, 预览, 删除等操作。项目整体UI框架使用的是 vux, 但可惜的…

面向对象分析

在需求获取阶段,开发人员关注于理解用户以及他们的使用要求。而在需求分析阶段,开发人员关注于理解系统需要构建的内容,其核心是产生一个准确的、完整的、一致的和可验证的系统模型,称为分析模型。 面对对象的分析模型由三个独立的…

51nod 1050 循环数组最大子段和

1050 循环数组最大子段和 N个整数组成的循环序列a[1],a[2],a[3],…,a[n],求该序列如a[i]a[i1]…a[j]的连续的子段和的最大值(循环序列是指n个数围成一个圈,因此需要考虑a[n-1],a[n],a[1],a[2]这样的序列)。当所给的整数均为负数时…

Spark- Linux下安装Spark

Spark- Linux下安装Spark 前期部署 1.JDK安装,配置PATH 可以参考之前配置hadoop等配置 2.下载spark-1.6.1-bin-hadoop2.6.tgz,并上传到服务器解压 [rootsrv01 ~]# tar -xvzf spark-1.6.1-hadoop2.6.tgz /usr/spark-1.6.1-hadoop2.6 3.在 /usr 下创建软链接到目标文…

python需要背的英语单词怎么写_学Python必须背的42个常见单词,看看你都会吗?...

这42个单词是学习Python必须背会的单词,也是代码中常见的单词。希望你能都背下来!!1. adult [ˈdʌlt] 成年人2. authentication [ɔːˌθentɪˈkeɪʃn] 身份验证、认证、鉴定3. bit [bɪt] 稍微、小量、小块、一点4. byte [baɪt] …

asp.net mvc4开启SqlServer 会话共享模式

2019独角兽企业重金招聘Python工程师标准>>> 应用部署结构(精简): 站点部署在Nginx后面,以Nginx作为反向代理,不希望在Nginx上设置ip_hash,实现比较真实的负载均衡效果。 这时考虑到需要让site1和site2同时…

【转】(五)unity4.6Ugui中文教程文档-------概要-UGUI Interaction Components

原创至上,移步请戳:(五)unity4.6Ugui中文教程文档-------概要-UGUI Interaction Components 4、Interaction Components 本节涵盖了处理交互,例如鼠标或触摸事件和使用键盘或控制器交互的 UI系统中的组件。 4.1 Select…

j2ee 简单网站搭建:(十)jquery ztree 插件使用入门

为什么80%的码农都做不了架构师?>>> 《j2ee 简单网站搭建:(一) windows 操作系统下使用 eclipse 建立 maven web 项目》《j2ee 简单网站搭建:(二)添加和配置 spring spring-mvc 的…