1 Java代码示例
//定义一个类
class Triple {
int user;
int item;
double rating;
}
//声明对象数组
Triple[] dataset = new Triple[20];
//利用对象数组访问成员变量
for(int i = 0; i < dataset.length; i ++){
dataset[i].user = 0;
dataset[i].item = 0
dataset[i].rating = 0;
}
问题一:如何利用python实现类似功能呢?
问题二:如何利用python将对象数组作为参数?
public void function1(Triple[] paraDataset){
for(int i = 0; i < paraDataset.length; i ++){
paraDataset[i].user = 0;
paraDataset[i].item = 0
paraDataset[i].rating = 0;
}
}
2 Python代码(针对问题1)
#定义一个类
class Triple:
def __init__(self, para_user: int = 0, para_item: int = 0, para_rating: float = 0):
self.user = para_user
self.item = para_item
self.rating = para_rating
#声明一维对象数组
dataset = [Triple() for _ in range(20)]
#声明二维对象数组
dataset = [[Triple() for _ in range(5)] for _ in range(4)]
#利用对象数组访问成员变量
for i in range(20):
dataset[i].user = 0
dataset[i].item = 0
dataset[i].rating = 0
3 对象数组作为参数(针对问题2)
#参数可以不指定类型
def function1(param = None):
for i in range(20):
param[i].user = 0
param[i].item = 0
param[i].rating = 0
因为python是动态类型,所以在编写代码的时候并不会提示。
版权声明:本文为search_129_hr原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。