python下网络中接收到列表,将字节循环转换成字符串,却报KeyError:1错误?

新手上路,请多包涵

import networkx as net
from urllib import request
def read_friends(g,name):

response = request.urlopen('https://www.livejournal.com/misc/fdata.bml?user='+name)
for line in response.readlines():
    parts = line.split()
    if len(parts) == 0:
        continue
    if parts[0] =='<':
        g.add_edge(parts[1],name)
    else:
        g.add_edge(name,parts[1])

def snowball_sampling(g,center,max_depth = 1,current_depth = 0,taboo_list=[]):

print(center,current_depth,max_depth,taboo_list)
if current_depth == max_depth:
    print('out of depth')
    return taboo_list
if center in taboo_list:
    print('taboo')
    return taboo_list
else:
    taboo_list.append(center)
    read_friends(g,center)
    for node in g.neighbors(center):
        taboo_list = snowball_sampling(g,node,current_depth=current_depth+1,max_depth = max_depth,taboo_list=taboo_list)

def trim_degrees(g,degree = 1):

g2 = g.copy()
d = net.degree(g2)
print(g2.nodes())
L = g2.nodes()
for x in range(len(L)):
    if x == 0:
        continue
    else:
        L[x] = L[x].decode('utf-8')
print(L)
'''
for n in L:
    if d[n] <= degree:
        g2.remove_node(n)
return g2
'''

g = net.Graph()
snowball_sampling(g,'kozel_na_sakse')
core = trim_degrees(g)
print(len(core))

L[x] = L[x].decode('utf-8')这一行报错,错误原因KeyError:1
单独取出接收到字节使用循环转换得到字符串是没问题的,但是在这就报错

阅读 3k
2 个回答

L中不存在键==1的项目, g2.nodes()内容是啥?

推荐问题