图 1 数据文件 | 图 2 运行结果 |
(2)主程序,读取"数据.txt"文件,进行处理后显示用户关系二维表,再输入推荐目标用户id和阈值p,显示向目标用户推荐的好友列表,请在划线处填入合适的代码。
n = 10
sj = [] ;zj = [];tj= []
#按行读取"数据.txt"文件,每次读一行文字存入字符串变量 line 中
f=open("数据.txt")
line=f.readline() # 读取标题行
line=f.readline()
while line:·
sj.append(line.split(" ")) # 将字符串以" "为间隔分割成多个字符串组成的列表 line=f.readline() #读取下一行
zj = zhengli(sj)
# 显示各用户之间关系二维表,代码略
# 输入推荐目标用户 id 和阈值 p,显示向目标用户推荐的好友列表
id = int(input("请输入推荐目标用户 id:"))
p = int(input("请输入阈值 p:"))
if len(tj) != 0:
t = 0
print("推荐好友为:",end = " ")
while t < len(tj):
print(tj[t],end = " ")
t = t + 1
else:
print("没有推荐好友")
(3)编写整理数据函数 zhengli,根据好友列表, 生产关系二维表,请在划线处填入合适的代码。
def zhengli(sj):
r = [[0 for i in range(n)]for j in range(n)]
for i in range(n):
for j in sj [i][1:]:
r[i][int(j)-1] = 1
return r
(4)编写函数 fenxi,根据输入推荐目标用户 id 和阈值 p,显示向目标用户推荐的好友列表,请在划线处填入合适的代码。
def fenxi(id,p):
res =[]
for i in range(n):
c = 0
for j in range(n):
if i != id-1 and j != id-1 and i != j:
if
c += 1
if
res.append(i+1)
return res

同类型试题

y = sin x, x∈R, y∈[–1,1],周期为2π,函数图像以 x = (π/2) + kπ 为对称轴
y = arcsin x, x∈[–1,1], y∈[–π/2,π/2]
sin x = 0 ←→ arcsin x = 0
sin x = 1/2 ←→ arcsin x = π/6
sin x = √2/2 ←→ arcsin x = π/4
sin x = 1 ←→ arcsin x = π/2


y = sin x, x∈R, y∈[–1,1],周期为2π,函数图像以 x = (π/2) + kπ 为对称轴
y = arcsin x, x∈[–1,1], y∈[–π/2,π/2]
sin x = 0 ←→ arcsin x = 0
sin x = 1/2 ←→ arcsin x = π/6
sin x = √2/2 ←→ arcsin x = π/4
sin x = 1 ←→ arcsin x = π/2

