Python 变量、常量和字面量
- 变量与赋值:变量用于存储数据,可以通过赋值运算符
=
轻松赋值。 - 常量与字面量:常量是不变的值,而字面量是固定值,如数字、字符串。Python 通过大小写约定来区分常量和变量。
- 变量命名规则:变量名应有意义,可使用字母、数字、下划线组合,且区分大小写,避免使用保留关键字。
Python 变量
在编程中,变量是用来存储数据的容器。例如,
number = 10
这里,number 是存储值 10 的变量。
给变量赋值
如上例所示,我们使用赋值运算符 =
来给变量赋值。
# 给 site_name 变量赋值
site_name = 'mashangxue123.com'
print(site_name)
# 输出:mashangxue123.com
在上面的例子中,我们将值 'mashangxue123.com'
赋给了 site_name 变量。然后,我们打印出了赋给 site_name 的值。
注意:Python 是一种类型推断语言,因此你不必显式定义变量类型。它会自动知道 mashangxue123.com
是一个字符串,并将 site_name
变量声明为字符串。
更改变量的值
site_name = 'mashangxue123.com'
print(site_name)
# 给 site_name 分配一个新值
site_name = 'apple.com'
print(site_name)
输出
mashangxue123.com
apple.com
在这里,site_name 的值从 'mashangxue123.com'
更改为 'apple.com'
。
示例:一次为多个变量赋予多个值
a, b, c = 5, 3.2, 'Hello'
print(a) # 打印 5
print(b) # 打印 3.2
print(c) # 打印 Hello
如果我们想一次性为多个变量赋予相同的值,我们可以这样做:
site1 = site2 = 'mashangxue123.com'
print(site1) # 打印 mashangxue123.com
print(site2) # 打印 mashangxue123.com
在这里,我们将相同的字符串值 'mashangxue123.com'
分配给了 site1 和 site2 两个变量。
Python 变量命名规则
- 常量和变量名应该由小写字母(a 到 z)、大写字母(A 到 Z)、数字(0 到 9)或下划线(_)组成。例如:
snake_case
MACRO_CASE
camelCase
CapWords
-
创建有意义的名称。例如,vowel 比 v 更有意义。
-
如果你想创建一个包含两个单词的变量名,请使用下划线分隔它们。例如:
my_name
current_salary
- Python 是区分大小写的。所以 num 和 Num 是不同的变量。例如,
var num = 5
var Num = 55
print(num) # 5
print(Num) # 55
- 避免使用 关键字 如 if, True, class 等作为变量名。
Python 常量
常量是一种特殊类型的变量,其值无法更改。
常量通常在 模块 中声明和赋值(一个包含变量、函数等的新文件,被导入到主文件中)。
让我们看看如何在单独的文件中声明常量并在主文件中使用它,
创建 constant.py:
# 声明常量
PI = 3.14
GRAVITY = 9.8
创建 main.py:
# 导入我们上面创建的 constant 文件
import constant
print(constant.PI) # 打印 3.14
print(constant.GRAVITY) # 打印 9.8
在上面的示例中,我们创建了 constant.py 模块文件。然后,我们将常量值赋给了 PI 和 GRAVITY。
之后,我们创建了 main.py 文件并导入了 constant
模块。最后,我们
打印了常量值。
注意:实际上,我们在 Python 中不使用常量。将它们命名为全大写字母是一种惯例,用于将它们与变量区分开,但实际上并不会阻止重新赋值。
Python 字面量
字面量是程序中固定值的表示。它们可以是数字、字符或字符串等。例如,'Hello, World!'
, 12
, 23.0
, 'C'
等。
字面量经常用于给变量或常量赋值。例如,
site_name = 'mashangxue123.com'
在上述表达式中,site_name 是一个变量,'mashangxue123.com'
是一个字面量。
Python 数字字面量
数字字面量是不可变的(不可更改)。数字字面量可以属于三种不同的数值类型:整数
、浮点数
和复数
。
类型 | 示例 | 备注 |
---|---|---|
十进制 | 5, 10, -68 | 常规数字。 |
二进制 | 0b101, 0b11 | 以 0b 开头。 |
八进制 | 0o13 | 以 0o 开头。 |
十六进制 | 0x13 | 以 0x 开头。 |
浮点数字面量 | 10.5, 3.14 | 包含浮点小数点。 |
复数字面量 | 6 + 9j | 形式为 a + bj 的 数值,其中 a 是实部,b 是虚部 |
Python 布尔字面量
有两个布尔字面量:True
和 False
。
例如,
result1 = True
在这里,True
是分配给 result1 的布尔字面量。
Python 字符串和字符字面量
字符字面量是用引号括起来的 unicode 字 符。例如,
some_character = 'S'
在这里,S
是分配给 some_character 的字符字面量。
类似地,字符串字面量是用引号括起来的字符序列。
例如,
some_string = 'Python is fun'
在这里,'Python is fun' 是分配给 some_string 的字符串字面量。
Python 中的特殊字面量
Python 包含一个特殊的字面量 None
。我们用它来指定一个空的变量。例如,
value = None
print(value)
# 输出:None
在这里,由于 value 变量没有被赋值,所以输出结果为 None
。
字面量集合
有四种不同的字面量集合:列表字面量、元组字面量、字典字面量和集合字面量。
# 列表字面量
fruits = ["apple", "mango", "orange"]
print(fruits)
# 元组字面量
numbers = (1, 2, 3)
print(numbers)
# 字典字面量
alphabets = {'a':'apple', 'b':'ball', 'c':'cat'}
print(alphabets)
# 集合字面量
vowels = {'a', 'e', 'i' , 'o', 'u'}
print(vowels)
输出
['apple', 'mango', 'orange']
(1, 2, 3)
{'a': 'apple', 'b': 'ball', 'c': 'cat'}
{'e', 'a', 'o', 'i', 'u'}
在上面的示例中,我们创建了一个水果列表,一个数字元组,一个具有指定键对应值的字母字典,以及一个元音字母集合。
要了解更多关于字面量集合的信息,请参阅 Python 数据类型。