无论使用什么语言编程,其最终目的都是对数据进行处理。程序在编程过程中,为了处理数据更加方便,通常会将其存储在变量中。

形象地看,变量就像一个个小容器,用于“盛装”程序中的数据。除了变量,还有常量,它也能用来“盛装”数据,它们的区别是,常量一旦保存某个数据之后,该数据就不能发生改变;但变量保存的数据则可以多次发生改变,只要程序对变量重新赋值即可。

Python 使用等号(=)作为赋值运算符,例如 a = 20 就是一条赋值语句,这条语句用于将 20 装入变量 a 中,这个过程就被称为赋值,即将 20 赋值给变量 a。

注意,变量名其实就是标识符,因此在命名时,既要遵守 Python 标识符命名规范,还要避免和 Python 内置函数以及 Python 保留字重名。

如果你接触过 C、C++Java 这些高级编程语言会发现,它们在使用变量存储数据时,必须指定该变量所能存储的数据类型,以 C 语言为例:

int a = 20

这行 C 语言代码的意思是,声明一个整形变量 a 来存储整数 20,这就意味着,我们无法用 a 存储小数、字符以及字符串等其他类型数据,这类编程语言被称为强类型语言。

和强类型语言相对应的是弱类型语言,Python 就是典型代表之一。弱类型语言有以下 2 个特征:

  1. 变量无须声明即可直接赋值,对一个不存在的变量赋值就相当于定义了一个新变量。
  2. 变量的数据类型可以动态改变:同一个变量可以一会儿被赋值为整数值,一会儿被赋值为字符串。

对于没有编程基础的读者,可以先不编写真正的 Python 程序,而是先打开 Python 的交互式解释器,在这个交互式解释器中“试验” Python。首先,在 Python 解释器中输入如下内容:

>>> a = 5
>>>

上面代码没有生成任何输出,只是向交互式解释器中存入了一个变量 a,该变量 a 的值为 5。

如果我们想看到某个变量的值,可以直接在交互式解释器中输入该变量。例如,此处想看到变量 a 的值,可以直接输入 a。

>>> a
5
>>>

可以看到,Python 解释器输出变量 a 的值为 5。

接下来,我们尝试改变变量 a 的值,将新的值赋给变量 a,例如:

>>>a = 'Hello , Charlie'
>>>

这会导致变量原来的值被新值覆盖掉,换句话说,此时变量 a 的值就不再是 5 了,而是字符串“Hello , Charlie”,a 的类型也变成了字符串。现在再输入 a,让交互式解释器显示 a 的值:

>>> a
'Hello , Charlie'

如果想查看此时 a 的类型,可以使用 Python 的 type() 内置函数。

>>> type(a)
<class 'str'>
>>>

可以看到,a 的类型是 str(表示字符串类型)。

形象地说,函数就相当于一个有魔法的“黑盒子”,你可以向这个“黑盒子“提供”一些数据,这个“黑盒子”会对这些数据进行处理,这种处理包括转换和输出结果。比如 print() 也是一个函数,它的作用就是输出传入的数据。此处 type() 函数的作用则用于输出传入数据的类型。

最后,如果想把上面的交互过程转换成真正的 Python 程序,只要将过程中输入的每行代码放在一个文件中,并使用 print() 函数来输出变量,最后将该文件保存为以 .py 结尾的源文件即可。

在交互式解释器中,只要输入变量名,交互式解释器就会输出变量的值,但在 Python 程序中则必须使用 print() 函数来输出变量。

上面的交互过程对应的程序如下:

  1. #定义一个数值类型变量
  2. a = 5
  3. print(a)
  4. #重新将字符串赋值给a变量
  5. a = 'Hello , Charlie'
  6. print(a)
  7. print(type(a))

通过使用 python 命令或者 IDLE 中的“Run->Run Module”菜单项运行程序(具体操作可阅读《第一个Python程序》一节),即可看到如下输出结果:

5
Hello , Charlie
<type 'str'>

11.Python变量及其使用的更多相关文章

  1. python变量与基础数据类型

    一.什么是变量 变量是什么?  变量:把程序运行的中间结果临时的存在内存里,以便后续的代码调用.在python中一切都是变量. 1.python变量命名的要求 1,必须有数字,字母,下划线任意组合. ...

  2. python入门课程 第3章 Python变量和数据类型

    第3章 Python变量和数据类型3-1 Python中数据类型计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值.但是,计算机能处理的远不止数值,还可以处理文本.图形 ...

  3. 7、Python变量流程基础(变量、赋值、格式化、运算符、流程控制、range()函数)

    一.执行Python程序的两种方式 1.交互式 在终端内输入“python3”,然后输入python代码 2.命令行式 在终端内输入“python3 文本文件路径” 二.变量 1.变量的组成 Pyth ...

  4. Python 变量作用域与函数

    Python 的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承.Py ...

  5. python变量的内存管理

    python变量的内存管理 一.变量存在了哪里? 先让我们来看一段代码: height = 100 # 定义变量 # print(100) # print会自动帮你创建一个变量100,打印完之后,马上 ...

  6. Python基础-1 python由来 Python安装入门 注释 pyc文件 python变量 获取用户输入 流程控制if while

    1.Python由来 Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚 ...

  7. Python变量详解

    Python变量详解 目录 Python变量详解 一.变量的定义 二.变量组成的三部分 2.1 变量名 2.1.1 变量名的命名规范 2.1.2 变量名的命名风格 2.2 赋值符号 2.3 变量值 三 ...

  8. Python变量小秘密

    变量全都是引用 跟其他编程语言不同,Python的变量不是盒子,不会存储数据,它们只是引用,就像标签一样,贴在对象上面. 比如: >>> a = [1, 2, 3] >> ...

  9. C++11特性——变量部分(using类型别名、constexpr常量表达式、auto类型推断、nullptr空指针等)

    #include <iostream> using namespace std; int main() { using cullptr = const unsigned long long ...

随机推荐

  1. 十进制快速幂(牛客多校第五场)-- generator 1

    思路: 十进制快速幂. #include <stdio.h>//sprintf #include <cstdlib>////malloc exit strcat itoa sy ...

  2. c++学习笔记之类和对象(三、static静态成员变量和静态成员函数)

    一.static静态成员变量 对象的内存中包含了成员变量,不同的对象占用不同的内存,这使得不同对象的成员变量相互独立,它们的值不受其他对象的影响.是有时候我们希望在多个对象之间共享数据,对象 a 改变 ...

  3. CSS3彩色进度条加载动画 带进度百分比

    在线演示       本地下载

  4. Eslint报错整理与解决方法

    1.‘Unexpected tab character’ 字面意思理解呢就是意想不到的制表符,当时出现的时候就是我习惯的使用Tab键去打空格,但是eslint默认不认可Tab,所以解决方法很简单: 在 ...

  5. Codeforces 1190A. Tokitsukaze and Discard Items

    传送门 显然从左到右考虑每个要删除的数 维护一个 $cnt$ 表示之前已经删除了 $cnt$ 个数,那么当前所有要删除数的实际位置就要减去 $cnt$ 直接暴力枚举哪些数在最左边一个块然后一起删除 每 ...

  6. 牛客 2C 圈圈

    题面: shy有一个队列a[1], a[2],…,a[n].现在我们不停地把头上的元素放到尾巴上.在这过程中我们会得到n个不同的队列,每个队列都是a[k],a[k+1],…,a[n],a[1],…,a ...

  7. Spring经典高频面试题,原来是长这个样子

    Spring经典高频面试题,原来是长这个样子 2019年08月23日 15:01:32 博文视点 阅读数 719   版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文 ...

  8. java中如果删除导入的jar包,工程出现叹号解决方案

    第一步:在工程上右键 第二步:选中build Path 第三步:选择Configue bulid path 第四步:选择liberary 第五步:鼠标点击带红色叉叉的 第六步:点击edit 第七步:点 ...

  9. IDEA修改Maven全局配置

    在使用过程中发现,IDEA每次新建一个Project ,这个maven配置都会初始化默认的. 这里需要设置下全局配置: File -> Other Settings -> Settings ...

  10. javascript模板字符串(反引号)

    模板字面量 是允许嵌入表达式的字符串字面量. 你可以使用多行字符串和字符串插值功能.它们在ES2015规范的先前版本中被称为“模板字符串”. 语法 `string text`​`string text ...