python——变量
参考资料: Python程序设计与实现
变量名的命名规则
- 仅仅由大、小写英文字母,下划线(
_
),数字(不可作为变量名的开头)组合而成; - 不能使用Python关键字和函数名作为变量名;
- 变量名不能包含空格,但可以使用
_
来分隔其中的单词; - 变量名应既简短又具有描述性;
- 慎用字母
l
和O
,因为它们可能被人错看成数字1和0。
python变量不需要声明变量类型
python规定,变量是没有类型之分的,变量的使用不需要提前声明和定义,只需对变量进行赋值,赋值的同时该变量即被创建。
Python是动态的,变量的类型由赋予它的值来决定。
示例:
a=2
type(a)
int
b=a
type(b)
int
a=2.5
type(a)
float
type(b)
int
print(a)
print(b)
2.5
2
b=b*a
print(b)
5.0
注意:
在程序中可以随时修改变量的值,而python将始终记录变量的最新值。
示例:
a='hello'
print(a)
a='world'
print(a)
hello
world
赋值语句(没有返回值)
形式:\(变量=值\)
增值变量
A+=B
等价于 A=A+B
. 一般 A+=B
更加高效,避免复制两次 A
.
+
可以换成-
,*
,/
,%
,**
等符号。
变量的引用
在Python中,对象是最基本的概念。整数,浮点数,字符串,元组,列表,字典等数据结构都是作为对象存在的。
每个对象都有两个标准的头部信息:
- 标识对象的类型的类型标识符;
- 记录对象引用次数的计数器。
Python中变量是没有类型的,类型的概念是属于对象的。使用id()
函数可以返回对象的内存地址。
n=7
id(n)
1973873296
赋值语句的使用原理:
- 创建一个对象,前提是该对象未被创建。
- 创建一个变量,前提是该变量未被创建。
- 将对象的引用值赋给变量,引用器值增加1。
引用就是将对象和变量绑定起来。通过引用将变量指向了一个对象的内存空间,故可以说变量是对象的标签。
赋值语句是使变量建立对象的引用值的,而不是复制对象。
以下示例可以很好的说明:
R=[2,4,5,8]
S=R
S
[2, 4, 5, 8]
R
[2, 4, 5, 8]
id(S)==id(R)
True
R[2]=6
R
[2, 4, 6, 8]
S
[2, 4, 6, 8]
id(S)==id(R)
True
由于id(S)==id(R)
返回True
,故而赋值不是复制,仅仅是引用对象(即“将对象赋值给变量”相当于“用变量给对象贴上了标签”)
增量赋值与普通赋值的区别
- 二者对于不可变对象的处理方式见赋值语句的使用原理。
- 对于可变对象,二者便会不同,增量赋值会将可变对象就地修改,而不是创建新的对象。
举例说明:
L=[1,2,3]
id(L)
2196737070792
L+=[4]
id(L)
2196737070792
L=L+[4]
id(L)
2196741665416
多重赋值
示例:
X=Y=Z=22
print(X)
print(Y)
print(Z)
22
22
22
X,Y,Z=2,"U",3.56
print(X)
print(Y)
print(Z)
2
U
3.56
Y,X=X,Y
print(X)
print(Y)
U
2
赋值生成引用,而不是拷贝###
不可变类型不可在原处改变###
python——变量的更多相关文章
- Python 变量类型
Python 变量类型 变量存储在内存中的值.这就意味着在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中. 因此,变量可以指定不同的数据 ...
- Python变量、数据类型6
1.Python变量 变量,即代表某个value的名字. 变量的值存储在内存中,这意味着在创建变量时会在内存中开辟一个空间. !!!即值并没有保存在变量中,它们保存在计算机内存的深处,被变量引用.所以 ...
- Python变量类型
Python变量类型 变量是存储在内存中的值,因此在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定的内存,并决定什么数据可以被存储在内存中. 因此变量可以指定不同的数据类型, ...
- C与Python变量的区别
C中变量有类型,代表一定内存. 而Python变量只是封装过的指针,没有类型.如果不指向对象,就没有意义,更谈不上类型. python中 a=b,和C中 a=b是完全不同的两个操作.前者只是指针(引用 ...
- Python变量类型(l整型,长整形,浮点型,复数,列表,元组,字典)学习
#coding=utf-8 __author__ = 'Administrator' #Python变量类型 #Python数字,python支持四种不同的数据类型 int整型 long长整型 flo ...
- 【python系列】--Python变量和数据类型
python数据类型 一.整数 Python可以处理任意大小的整数,当然包括负整数,在Python程序中,整数的表示方法和数学上的写法一模一样,例如:1,100,-8080,0,等等. 计算机由于使用 ...
- [Python]基础教程(4)、Python 变量类型
Python 变量类型 变量存储在内存中的值.这就意味着在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中. 因此,变量可以指定不同的数据 ...
- python变量与基础数据类型
一.什么是变量 变量是什么? 变量:把程序运行的中间结果临时的存在内存里,以便后续的代码调用.在python中一切都是变量. 1.python变量命名的要求 1,必须有数字,字母,下划线任意组合. ...
- python变量传递
python变量传递 数值 代码 num_1 = 123 num_2 = num_1 # 改变num_2值前 print 'num_1 = {0}, num_2 = {1}'.format(num_1 ...
随机推荐
- (转载)开源ckplayer 网页播放器, 跨平台(html5, mobile),flv, f4v, mp4, rtmp协议. webm, ogg, m3u8 !
文章链接:http://justcoding.iteye.com/blog/2110275 CKplayer,其全称为超酷flv播放器,它是一款用于网页上播放视频的软件,支持的格式有:http协议上的 ...
- 2238"回文字串"报告
题目描述: 回文串,就是从前往后和从后往前看都是一样的字符串.那么现在给你一个字符串,请你找出该字符串中,长度最大的一个回文子串. 输入描述: 有且仅有一个仅包含小写字母的字符串,保证其长度不超过50 ...
- poj 2299 Ultra-QuickSort 题解
Description In this problem, you have to analyze a particular sorting algorithm. The algorithm proce ...
- Hadoop生态系统图解
Hadoop生态架构图 参考文章: Hadoop生态系统介绍 HDFS架构 1.NaneDode:主节点,**存储文件的元数据**如文件名,文件目录结构,文件属性(生成时间,副本数量,文件权限),以及 ...
- Immutable的认识
Facebook 工程师 Lee Byron 花费 3 年时间打造,与 React 同期出现,但没有被默认放到 React 工具集里(React 提供了简化的 Helper).它内部实现了一套完整的 ...
- 大数据平台搭建-kafka集群的搭建
本系列文章主要阐述大数据计算平台相关框架的搭建,包括如下内容: 基础环境安装 zookeeper集群的搭建 kafka集群的搭建 hadoop/hbase集群的搭建 spark集群的搭建 flink集 ...
- voa 2015 / 4 / 25
When English speakers talk about time and place, there are three little words that often come up: in ...
- oh-my-zsh配置
oh-my-zsh是做什么的 开源的zsh配置工具,它的主题和插件系统可以为zsh扩展外观和很多有用的功能,官方是这样介绍的: Oh-My-Zsh is an open source, communi ...
- 程序员必知的Python陷阱与缺陷列表
本文关注的主要是python陷阱,具体而言,是指CPython,而且除非特别说明,所有代码示例都是在python2.7运行的. 我个人对陷阱的定义是这样的:代码看起来可以工作,但不是以你“想当然“”的 ...
- js获取客户端MAC地址
最近遇到一个需求,医院要求呼叫中心账号必须对应MAC地址,也就是说该MAC地址必须和呼叫中心账号对应才可使用,这可就难道我了,这需求就要求每次都判断用户登录的电脑MAC地址是否有呼叫中心账号,当然只针 ...