Python变量基础

简介: 这一概念来源于数学,用在编程领域中,是指计算机语言中能储存计算结果或能表示值的抽象概念。

大家好,欢迎来到 Crossin的编程教室 !

1. 什么是变量


所谓「变量」,就是可以变化的量。(这解释真是听君一席话,如听一席话)


这一概念来源于数学,用在编程领域中,是指计算机语言中能储存计算结果或能表示值的抽象概念。


变量可以通过变量名访问。上一次我们聊过 Python 中变量名的命名规则(Python到底能不能用中文变量名?),今天我们再聊聊更多关于变量的事。


2. 为什么要有变量


有个刚学 Python 第一天的同学问:


不懂为啥要用变量,需要什么值直接写就好了,干嘛还多此一举?


如果我们的程序都只是输出“Hello World”或做简单的四则运算,当然可以不用变量。


但实际的程序并不会这么简单。


在代码中,所有我们看到的符号、数字、字母、文字等,统称为数据。计算机程序就是由这些数据按照一定的语法规则组成的。


一个真正的程序里面会有各种数据,这些数据不可能都是固定不变的,会需要进行计算和处理。为了更方便地使用这些数据,我们要给这些数据取名字。简单来说,变量就是数据的名字,用以存取数据,通过不同的变量名区别不同的数据。


比如一个游戏里的角色,它所处的位置、它的等级、它攻击力、防御力、当前的血量等等,这些数据都需要用变量来管理。一个萝卜一个坑,一个数值也要关联到一个变量上,程序才好处理它。


3. 变量的使用


使用变量无非两种情况,一是存放数值,二是提取存放的数值。


在 Python 语言中,变量需要遵循「先创建,后使用」的原则。


Python 中要创建一个变量,就是用等号(=)向一个变量名赋值。如:

a = 1


这就创建了一个值为 1 的变量 a。


然后你就可以使用这个变量。如:

print(a)


或者用它去创建另一个变量。如:

b = a + 2


既然都说了是“变”量,那自然也可以给变量重新赋值。如:

a = 3


这样 a 的值就被修改为了 3。


如果直接使用一个没有赋值过的变量名,会引发一个名称未定义的 NameError 错误,导致程序中断。如:

print(x)


会报错:

NameError: name 'x' is not defined


4. 变量的类型


程序中的数据多种多样,有数字,有文本,还有复杂的复合结构。为了便于管理,需要有相对应的数据类型。


Python 是一门动态类型的语言,与 C、C++ 等静态编程语言不同,在创建变量时不需要指定变量类型。而是根据给它赋值的类型确定,并且是可变的。


比如:

a = 1
print(type(a))


Python 内置的 type 函数可以查看一个变量的类型。这里可以看到输出为 <class 'int'>,即整数类型。


如果在这两句之后再加上:

a = 'a'print(type(a))


程序并不会报错,并输出 <class 'str'>,即变量 a 已被修改为字符串类型。


关于类型的更多内容,我将在之后详聊,今天就不展开了。


5. 新手问题


如果你问我,新手最常遇到的变量问题是什么?结果可能会让你大跌眼镜。


因为就我的经验,很多初学者都会踩到的一个坑是:


拼错变量名!


比如前面赋值了个变量叫 name,结果过了几行,又写成了 mame。于是就得到一个这样的 NameError 报错:



所以,如果你看到报错莫名地说你某个变量 not defined,那就找找看所有用到的地方是不是有拼写错了。


当然咯,这时候就体现出 IDE 的作用了:一个合格的 IDE 会给你拼错的变量名划上波浪线。



对于 Python 的变量,你还要什么想了解的内容?欢迎在留言区讨论。


以下是视频时间,欢迎大家关注、点赞、转发:

相关文章
|
16天前
|
人工智能 Python
[oeasy]python039_for循环_循环遍历_循环变量
本文回顾了上一次的内容,介绍了小写和大写字母的序号范围,并通过 `range` 函数生成了 `for` 循环。重点讲解了 `range(start, stop)` 的使用方法,解释了为什么不会输出 `stop` 值,并通过示例展示了如何遍历小写和大写字母的序号。最后总结了 `range` 函数的结构和 `for` 循环的使用技巧。
27 4
|
1月前
|
Python
【10月更文挑战第5天】「Mac上学Python 8」基础篇2 - 变量深入详解
本篇将详细介绍Python中变量的使用方式和进阶操作,涵盖变量的输入与输出、变量的多重赋值、变量的内存地址管理以及变量的传递和交换等操作。通过本篇的学习,用户将对变量的使用有更深入的理解,并能灵活运用变量进行各种编程操作。
51 1
【10月更文挑战第5天】「Mac上学Python 8」基础篇2 - 变量深入详解
|
2月前
|
机器学习/深度学习 算法 数据可视化
8种数值变量的特征工程技术:利用Sklearn、Numpy和Python将数值转化为预测模型的有效特征
特征工程是机器学习流程中的关键步骤,通过将原始数据转换为更具意义的特征,增强模型对数据关系的理解能力。本文重点介绍处理数值变量的高级特征工程技术,包括归一化、多项式特征、FunctionTransformer、KBinsDiscretizer、对数变换、PowerTransformer、QuantileTransformer和PCA,旨在提升模型性能。这些技术能够揭示数据中的潜在模式、优化变量表示,并应对数据分布和内在特性带来的挑战,从而提高模型的稳健性和泛化能力。每种技术都有其独特优势,适用于不同类型的数据和问题。通过实验和验证选择最适合的变换方法至关重要。
45 5
8种数值变量的特征工程技术:利用Sklearn、Numpy和Python将数值转化为预测模型的有效特征
|
1月前
|
存储 编译器 Python
Python--变量、输出与输入
【10月更文挑战第5天】
|
1月前
|
测试技术 Python
Python MagicMock: Mock 变量的强大工具
Python MagicMock: Mock 变量的强大工具
|
1月前
|
存储 Java 编译器
Python学习三:学习python的 变量命名规则,算数、比较、逻辑、赋值运算符,输入与输出。
这篇文章是关于Python编程语言中变量命名规则、基本数据类型、算数运算符、比较运算符、逻辑运算符、赋值运算符以及格式化输出与输入的详细教程。
18 0
Python学习三:学习python的 变量命名规则,算数、比较、逻辑、赋值运算符,输入与输出。
|
1月前
|
存储 C语言 Python
解密 Python 的变量和对象,它们之间有什么区别和联系呢?
解密 Python 的变量和对象,它们之间有什么区别和联系呢?
20 2
|
2月前
|
测试技术 Python
Python MagicMock: Mock 变量的强大工具
Python MagicMock: Mock 变量的强大工具
|
2月前
|
存储 C语言 Python
通过 Cython 带你认清 Python 变量的本质
通过 Cython 带你认清 Python 变量的本质
50 8
|
1月前
|
存储 程序员 Python
Python编程入门:探索变量和数据类型
【10月更文挑战第8天】本文是针对初学者的Python编程入门指南,重点介绍Python中变量的定义和使用以及不同的数据类型。我们将通过实例来理解基本概念,并展示如何在Python程序中应用这些知识。文章旨在帮助初学者建立扎实的基础,使他们能够更自信地编写Python代码。