Python数据类型之变量
变量
在程序设计中,变数(英语:Variable,scalar)是指一个包含部分已知或未知数值或资讯(即一个值)之储存位址,以及相对应之符号名称(识别字)。通常使用变数名称参照储存值;将名称和内容分开能让被使用的名称独立于所表示的精确讯息之外。电脑原始码中的识别字能在执行期间绑扎一个值,且该变数的值可能在程式执行期间改变。 程序设计中的变数不一定能直接对应到数学中所谓的变数之概念。在程序设计中,变数的值不一定要为方程或数学公式之一部分。程序设计中的变数可使用在一段可重复的程序:在一处赋值,然后使用于另一处,接著在一次赋值,且以相同方式再使用一次(见迭代)。程序设计中的变数通常会给定一个较长的名称,以描述其用途;数学中的变数通常较为简洁,只给定一、两个字母,以方便抄写及操作。
一个变数的储存位址可以被不同的识别字所参照,这种情况称之为别名。使用其中一个识别字为变数赋值,将会改变透过另一个识别字存取的值。
编译器必须将代表变数的名称替代成该数据所在的实际位址。变数的名称、类型及位址通常会维持固定,但该位址所储存之数据于程式执行期间则可能会改变。
--以上是维基百科对 《变量(程序设计)》的解释
- 我们知道在计算机运行程序时数据都是暂存在内存中的,用通俗的话说:就是代指内存中某个地址中所保存的内容。
- 在Python中,上述图示用代码表示为(代码演示均在linux中完成):
ubuntu@VM-0-26-ubuntu:~$ python # 在linux命令行模式下进入python交互式环境
Python 2.7.12 (default, Nov 19 2016, 06:48:10) # 显示python的版本号信息
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> name = "xiangcl" # 在内存中创建一个内容为xiangcl,变量名为name的变量
>>> id(name) # 获得对象的内存的地址
3072794496L
- 在这个例子中就是变量name和字符串xiangcl之间建立了对应的关系。
- 在Python中,有一句话叫做:对象有类型,变量无类型。
- 在上述例子中对象xiangcl是字符串类型,这就好比将name这个标签粘贴在了字符串xiangcl上面。
变量的命名规则
- 在Python中,变量只能是由字母、数字以及下划线组成,且不能以数字作为开头。
- 下列Python的关键字也不能作为变量名使用(需特别注意):
python2.7
>>> import keyword # 引入keyword库
>>> keyword.kwlist # 查看关键字列表
['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
>>> keyword.iskeyword("and") # 判断and是否为关键字
True # 返回True,则为python关键字,反之不是,在python3中的判断方法是一样的,这里不在重复
>>> keyword.iskeyword("has")
False
python3.5.2
>>> import keyword
>>> keyword.kwlist
['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
可以看到Python2和Python3的关键词还是有所不同的。
变量的赋值
>>> name1 = "xiangcl"
>>> name2 = "向常乐"
>>> id(name1)
3072443392
>>> id(name2)
3072427744
>>> name1 = "xiangcl"
>>> id(name1)
3072443392
>>> name2 = name1
>>> id(name2)
3072443392
Python数据类型之变量的更多相关文章
- 第2章 Python编程基础知识 第2.1节 简单的Python数据类型、变量赋值及输入输出
第三节 简单的Python数据类型.变量赋值及输入输出 Python是一门解释性语言,它的执行依赖于Python提供的执行环境,前面一章介绍了Python环境安装.WINDOWS系列Python编辑和 ...
- python/数据类型和变量
数据类型和变量 数据类型 计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值.但是, 计算机能处理的远不止数值,还可以处理文本.图形.音频.视频.网页等各种各样的数据, ...
- python—数据类型和变量
在python中,能够直接处理的数据类型和变量有整数.浮点数.字符串.布尔值.空值.变量. 一.整数 1.python可处理任意大小的整数,包括负整数,在程序中的表示方法与在数学中的方法一样.例如:0 ...
- Python数据类型和变量
一.数据类型1.整型整型类型比较简单,就是我们数学中的正整数(1,2,520..).负整数(-2,-9..);与java不同的是,python中的整数可以无限大,而java的整数类型int为四个字节, ...
- Python之路----------基础 一(数据类型、变量、基本语法、流程控制)
一. 数据类型与变量 1.数据类型 整数 #Python在程序中的表示方法和数学上的写法一模一样,-1,0,1都是整数. 浮点数 1 #浮点数就是小数. 字符串 1 #在Python中字符串是以 ...
- python中的变量和数据类型
一.变量定义:变量是计算机内存中的一块区域,存储规定范围内的值,值 可以改变,通俗的说变量就是给数据起个名字. 二.变量命名规则: 1. 变量名由字母.数字.下划线组成 2. 数字不能开头 3. 不可 ...
- Python教程(2.2)——数据类型与变量
和C/C++.Java一样,Python也有数据类型和变量两个概念. 数据类型 Python中的几个基本数据类型为整数(integer/int).浮点数(float/float).布尔值(boolea ...
- [Python] 文科生零基础学编程系列二——数据类型、变量、常量的基础概念
上一篇:[Python] 文科生零基础学编程系列--对象.集合.属性.方法的基本定义 下一篇: (仍先以最简单的Excel的VBA为例,语法与Python不同,但概念和逻辑需要理解透彻) p.p1 { ...
- python入门(8)数据类型和变量
python入门(8)数据类型和变量 数据类型 在Python中,能够直接处理的数据类型有以下几种: 整数 Python可以处理任意大小的整数,当然包括负整数,在程序中的表示方法和数学上的写法一模一样 ...
随机推荐
- poj 1721 CARDS (置换群)
题意:给你一个数列,第i号位置的数位a[i],现在将数列进行交换,交换规则为a[i]=a[a[i]]:已知交换s次之后的序列,求原先序列 思路:置换的问题必然存在一个循环节,使一个数列交换n次回到原来 ...
- poj 2369 Permutations (置换入门)
题意:给你一堆无序的数列p,求k,使得p^k=p 思路:利用置换的性质,先找出所有的循环,然后循环中元素的个数的lcm就是答案 代码: #include <cstdio> #include ...
- SQLite 数据库
内容来源:高成珍.钟元生<Android编程经典案例解析> SQLite 数据库是Android 中内嵌的轻量级关系型数据库,本质上只是一个文件.SQLite 内部只支持NULL,INTE ...
- 使用SQL存储过程有什么好处 用视图有什么好处
随便胡乱说几点,大家补充一下.1.预编译,已优化,效率较高.避免了SQL语句在网络中传输然后再解释的低效率.2.如果公司有专门的DBA,写存储过程可以他来做,程序员只要按他提供的接口调用就好了.这样分 ...
- Android 布局(线性布局、相对布局)
一.线性布局(LinearLayout) <LinearLayout****</LinearLayout>1. orientation(布局方向)value=0 horizontal ...
- Cesium之球心坐标与本地坐标
1球心坐标(ECEF)与本地坐标(NEU) 假如你来到一个陌生城市,你很可能需要问路.通常会告诉你向北走100米,右转,向东走100米,理解起来很直观.你给儿子买了一个地球仪,你从北京(39,115) ...
- var的一些理解
var 是 variable(变量,可变物)的简写.在多种编程语言中,var 被用作定义变量的关键字,在一些操作系统中也能见到它的身影.类似object,但是效率比object高一点. var是一个局 ...
- 什么是RESTful?
RESTful一种软件架构风格,设计风格而不是标准,只是提供了一组设计原则和约束条件.它主要用于客户端和服务器交互类的软件.基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制. REST ...
- 初学 Java Script (算数运算及逻辑术语)
在JS中常用的算数运算符与其他编程类语言类似,逻辑术语也近乎相同. 一.常用算数运算符 1.基本算数运算符 赋值运算符:= : 加号:+ : 减号: - : 乘号: * : 除号: / : 求余: % ...
- linux 线程编程详解
1.线程的概念: 线程和进程有一定的相似性,通常称为轻量级的进程 同一进程中的多条线程将共享该进程中的全部系统资源,如虚拟地址空间,文件描述符和信号处理等等.但同一进程中的多个线程都有自身控制流 (它 ...