Python变量用法详解
变量用于存储程序中使用的各种数据,对应于计算机内存中的一块区域。变量通过唯一的标识符(即变量名)来表示,并且可以通过各种运算符对变量的值进行操作。
Python 是一种动态类型的编程语言,不需要显式地声明变量的数据类型,可以直接对变量赋值,然后在程序中使用它。
Python 中的所有数据均被抽象为对象,通过赋值语句将变量指向特定的对象,使变量与对象关联起来。当对变量重新赋值时,并不会修改对象的值,而是重新创建一个对象并使其与变量关联起来。因此,在 Python 中,对于同一个变量可以先后使用不同的数据类型对其进行赋值。
变量是在首次使用赋值语句对其赋值时创建起来的。赋值语句的一般语法格式如下:
变量中存放的并不是该数据对象的值,而是该数据对象的内存地址。这种通过内存地址间接访问数据对象的方式称为引用。使用内置函数 id() 可以获取由变量引用的内存地址。
通过变量之间的赋值可以使两个变量引用相同的对象,而使用身份运算符 is 则可以判定两个变量是否引用了同一个对象。
创建变量时,操作系统将为变量分配内存空间。对于已经存在的变量,可以使用 del 运算符将其删除,以释放所占用的内存空间。
例如:
在实际应用中,还可以根据需要对变量进行类型转换,此时将产生一个目标类型的新对象。变量的类型转换可以通过下列类型转换函数来实现。
例如:
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引用的是相同的对象
在实际应用中,还可以根据需要对变量进行类型转换,此时将产生一个目标类型的新对象。变量的类型转换可以通过下列类型转换函数来实现。
- int():用于将其他数据类型转换为整数。
- float():用于将其他数据类型转换为浮点数。
- round():用于按“四舍六入五留双”的规则将浮点数转换为整数。例如,round(1.23) 的值为 1,round(1.5) 和 round(2.5) 的值均为 2。
- str():用于将其他数据类型转换为字符串。
- bool():用于将其他数据类型转换为布尔型,其转换规则是将数字 0 和空字符串转换为 False,将所有非 0 数字和非空字符串转换为 True。
- chr()和ord():用于在整数与字符之间进行相互转换。chr() 函数是按 ASCII 码将一个整数转换为对应的字符,ord() 函数则将字符转换为对应的 ASCII 码或 Unicode 码。
例如:
# 定义变量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
ICP备案:
公安联网备案: