可变数据类型:当该数据类型对应的变量的值发生了变化时,它对应的内存地址不发生改变 如:列表,字典,集合
对于可变数据类型来说,如果修改其中的某个元素,引用该数据的所有变量都会发生变化。整个过程,该数据在内存中的地址都不发生变化。
a = [1, 2, 3]
print(id(a)) # 2852105025856
b = [4,5]
a.insert(1,b)
print(a,id(a)) # [1, [4, 5], 2, 3] 2852105025856
不可变数据类型:当该数据类型对应的变量的值发生了变化时,它对应的内存地址发生了改变 如:数值,字符串,元组
根据问题描述,你想编写一个面积计算程序,涉及到类与对象的知识。下面提供一个简单的示例代码,用以帮助你了解如何使用类与对象来实现这个程序。该程序计算两个形状的面积,分别是矩形和圆形。
import math
class Rectangle:
def __init__(self, width, height):
self.width = width
self.height = height
def area(self):
return self.width * self.height
class Circle:
def __init__(self, radius):
self.radius = radius
def area(self):
return math.pi * self.radius ** 2
# 使用示例
r = Rectangle(5, 10)
print("矩形的面积为:", r.area())
c = Circle(7)
print("圆形的面积为:", c.area())
代码解释:
class Rectangle
:定义了一个名为 Rectangle
的类,该类表示矩形。该类拥有一个构造函数 __init__
,该构造函数需要传入两个参数,分别是 width
和 height
,用来初始化矩形的宽和高。class Circle
:定义了一个名为 Circle
的类,该类表示圆形。该类拥有一个构造函数 __init__
,该构造函数需要传入一个参数 radius
,用来初始化圆形的半径。def area(self):
:这个方法用来计算形状的面积。在矩形类中,它计算矩形的面积;在圆形类中,它计算圆形的面积。r = Rectangle(5, 10)
:创建一个名为 r
的矩形对象,它的宽为 5,高为 10。print("矩形的面积为:", r.area())
:调用 r
对象的 area
方法,计算矩形的面积,并将结果打印出来。c = Circle(7)
:创建一个名为 c
的圆形对象,它的半径为 7。print("圆形的面积为:", c.area())
:调用 c
对象的 area
方法,计算圆形的面积,并将结果打印出来。该程序使用了类与对象的知识,通过定义两个类 Rectangle
和 Circle
,分别表示矩形和圆形,可以分别计算它们的面积。 area
方法是一个通用的方法,不同的类可以根据自己的需要来实现该方法,以完成具体的计算任务。