云计算Python自动化:Python变量详解

python学习过程中会用到许多数据,那为了方便操作,需要把这些数据分别用一个简单的名字代表,方便在接下来的程序中引用。

变量就是代表某个数据(值)的名称。简单点说变量就是给数据起个名字

变量名称的命名:

由字母数字下划线组成的,且不能以数字开头,不能使用关键字,区分大小写。

命名惯例:

  1. 以单一下划线开头的变量名(_X)不会被 from module import *语句导入

  2. 前后有下划线的变量名(X)是系统定义的变量名,对解释器有特殊意义

  3. 以双下划线开头,但结尾没有双下划线的变量名(__X)是类的本地变量

  4. 通过交互模式运行时,只有单个下划线的变量名(_)会保存最后表达式的结果

python命名规范总结:

模块名:小写字母,单词之间用_分割,比如ad_stats.py

包名:和模块名一样

类名:单词首字母大写,比如AdStats ConfigUtil

全局变量名:大写字母,单词之间用_分割,比如UMBER COLOR_WRITE

普通变量:小写字母,单词之间用_分割,比如this_is_a_var

实例变量:以_开头,其他和普通变量一样,比如_price _instance_var

私有实例变量(外部访问会报错):以__开头(2个下划线),其他和普通变量一样

__private_var

专有变量: 开头,结尾,一般为python的自有变量,不要以这种方式命名

doc _class

变量赋值:

是变量声明和定义的过程

单个变量赋值:

#!/usr/bin/python

-- coding: UTF-8 --

counter = 100 # 赋值整型变量

miles = 1000.0 # 浮点型

name = "John" # 字符串

print counter

print miles

print name

多个变量赋值:

Python允许你同时为多个变量赋值。

例如:

a = b = c = 1

以上实例,创建一个整型对象,值为1,三个变量被分配到相同的内存空间上。

同时为多个变量赋不同的值。

例如:

a, b, c = 1, 2, "john"

以上实例,两个整型对象1和2的分配给变量a和b,字符串对象"john"分配给变量c。

变量存储数据的方式:

一般编程语言变量存储数据的方式:

变量是计算机内存中的一块区域,变量可以存储规定范围内的值,而且值是可变的。

在创建变量时会在内存中开辟一个空间。基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。因此,变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符。

比如c语言在声明一个变量a之后,会在内存中开辟出一块儿对应的空间,在此空间中可以存储不同的值,也就是给变量赋予不同的值

python变量在内存中存储值得方式和其他编程语言不同:

在Python中,变量名没有类型,但对象有

变量名只是对对象的引用(内部实现为指针)

python中是以数据为主,变量a只是相当于一个内存空间的标签,a=1开辟一块空间存储1,之后重新复制a=2是重新开辟出新的空间存储2,变量名称a换了个位置指向新空间中的2

同样的地址空间可以有两个或多个标签,比如a=1,b=1实际上是a和b指向同一个地址空间

查看变量指向地址空间的地址:使用id(变量名称)函数

>> a=1

>> id(a)

19882304

>> b=1

>> id(b)

19882304

上例发现同一个值赋值给不同变量,实际地址空间未发生变化,只是标签发生了变化

猜你喜欢

转载自blog.51cto.com/13694927/2117043
今日推荐