自定义函数从 pajek 文件读取数据并保存到 python 字典中
Custom function reading data from pajek file and saving into a python dictionary
各位!
我目前正在处理以下任务:
“编写一个函数,从 pajek .net 文件中读取数据
并将其保存到字典中。"
写入“pajek.net”文件的数据是:
*Vertices 5
1 "x"
2 "y"
3 "z"
4 "m"
5 "n"
*Arcs
1 2 3
1 3 5
2 3 4
2 5 2
3 4 1
4 5 3
我写的函数是这样的:
def read(pajek):
list1 = []
vertices = []
arcs = []
edges = []
with open(pajek, 'r') as file:
lines = file.readlines()
isStar = ""
for line in lines:
if "*" in line:
isStar = line #in other files I'm working on, there is only a "*" in some lines
elif isStar.find("*Vertices") != -1:
vertices.append(line.split())
elif isStar.find("*Arcs") != -1:
arcs.append(line.split())
elif isStar.find("*Edges") != -1:
edges.append(line.split())
return vertices, arcs, edges
下一部分(“...将其保存到字典中。”)给我带来了麻烦。
我试过了,但总是出现一些错误...
有人可以帮我解决这个问题吗?
另外,我不能使用导入和模块!
P.S.
我是 Python 的新手,因此我仍在学习 Python 特定的提示和技巧
编辑:列表 => 列表 1
在您的 main 中添加此代码以根据读取函数的输出创建字典:
vertices, arcs, edges = read("pajek.net")
result = {"vertices": vertices,"arcs": arcs,"edges": edges}
print(result)
结果会像这样:
{
"vertices":[
[
"1",
"x"
],
],
"arcs":[
[
"1",
"2",
"3"
],
],
"edges":[
]
}
各位!
我目前正在处理以下任务:
“编写一个函数,从 pajek .net 文件中读取数据
并将其保存到字典中。"
写入“pajek.net”文件的数据是:
*Vertices 5
1 "x"
2 "y"
3 "z"
4 "m"
5 "n"
*Arcs
1 2 3
1 3 5
2 3 4
2 5 2
3 4 1
4 5 3
我写的函数是这样的:
def read(pajek):
list1 = []
vertices = []
arcs = []
edges = []
with open(pajek, 'r') as file:
lines = file.readlines()
isStar = ""
for line in lines:
if "*" in line:
isStar = line #in other files I'm working on, there is only a "*" in some lines
elif isStar.find("*Vertices") != -1:
vertices.append(line.split())
elif isStar.find("*Arcs") != -1:
arcs.append(line.split())
elif isStar.find("*Edges") != -1:
edges.append(line.split())
return vertices, arcs, edges
下一部分(“...将其保存到字典中。”)给我带来了麻烦。
我试过了,但总是出现一些错误...
有人可以帮我解决这个问题吗?
另外,我不能使用导入和模块!
P.S.
我是 Python 的新手,因此我仍在学习 Python 特定的提示和技巧
编辑:列表 => 列表 1
在您的 main 中添加此代码以根据读取函数的输出创建字典:
vertices, arcs, edges = read("pajek.net")
result = {"vertices": vertices,"arcs": arcs,"edges": edges}
print(result)
结果会像这样:
{
"vertices":[
[
"1",
"x"
],
],
"arcs":[
[
"1",
"2",
"3"
],
],
"edges":[
]
}