首页 > 编程笔记 > Python笔记

Python变量用法详解

变量用于存储程序中使用的各种数据,对应于计算机内存中的一块区域。变量通过唯一的标识符(即变量名)来表示,并且可以通过各种运算符对变量的值进行操作。

Python 是一种动态类型的编程语言,不需要显式地声明变量的数据类型,可以直接对变量赋值,然后在程序中使用它。

Python 中的所有数据均被抽象为对象,通过赋值语句将变量指向特定的对象,使变量与对象关联起来。当对变量重新赋值时,并不会修改对象的值,而是重新创建一个对象并使其与变量关联起来。因此,在 Python 中,对于同一个变量可以先后使用不同的数据类型对其进行赋值。

变量是在首次使用赋值语句对其赋值时创建起来的。赋值语句的一般语法格式如下:

变量=表达式

在上述语法中,等号(=)称为赋值号;赋值号左边必须是变量,其右边则为表达式。进行赋值操作时,首先计算表达式的值并创建一个数据对象,然后使变量指向该数据对象。

变量中存放的并不是该数据对象的值,而是该数据对象的内存地址。这种通过内存地址间接访问数据对象的方式称为引用。使用内置函数 id() 可以获取由变量引用的内存地址。

通过变量之间的赋值可以使两个变量引用相同的对象,而使用身份运算符 is 则可以判定两个变量是否引用了同一个对象。

创建变量时,操作系统将为变量分配内存空间。对于已经存在的变量,可以使用 del 运算符将其删除,以释放所占用的内存空间。

例如:
x=123
print("变量x\n\t引用的值:",end="")
print(x)
print("\t内存地址:",end="")
print(id(x))
print("\t数据类型:",end="")
print(type(x))
x="Python"
print("变量x\n\t引用的值:",end="")
print(x)
print("\t内存地址:",end="")
print(id(x))
print("\t数据类型:",end="")
print(type(x))
y=x
print("变量y\n\t引用的值:",end="")
print(y)
print("\t内存地址:",end="")
print(id(x))
print("\t数据类型:",end="")
print(type(y))
if x is y:
    print("变量x和y引用的是相同的对象")
运行结果为:

变量x
    引用的值:123
    内存地址:18745376
    数据类型:<class 'int'>
变量x
    引用的值:Python
    内存地址:19757056
    数据类型:<class 'str'>
变量y
    引用的值:Python
    内存地址:19757056
    数据类型:<class 'str'>
变量x和y引用的是相同的对象

当通过赋值创建变量时,Python 会根据表达式的值来确定变量的数据类型。使用 type() 函数可以检测变量的数据类型。

在实际应用中,还可以根据需要对变量进行类型转换,此时将产生一个目标类型的新对象。变量的类型转换可以通过下列类型转换函数来实现。
例如:
# 定义变量x
x = 123.456

# 打印变量x并转换为整数
print("变量x\n\t转换为整数:", end="")
print(int(x))

# 打印四舍五入后的x
print("\t四舍五入:", end="")
print(round(x))

# 打印变量x并转换为字符串
print("\t转换为字符串:", end="")
print(str(x))

# 打印变量x并转换为布尔值
print("\t转换为布尔值:", end="")
print(bool(x))

# 定义变量y
y = "A"

# 打印变量y和它的ASCII码
print("变量y\n\t字符:", end="")
print(y)
print("\tASCII码:", end="")
print(ord(y))

# 定义变量z
z = "汉"

# 打印变量z和它的Unicode码
print("变量z\n\t字符:", end="")
print(z)
print("\tUnicode码:", end="")
print(ord(z))
运行结果为:

变量x
    转换为整数:123
    四舍五入:123
    转换为字符串:123.456
    转换为布尔值:True
变量y
    字符:A
    ASCII码:65
变量z
    字符:汉
    Unicode码:27721

相关文章