预期缩进的块异常

时间:2018-12-27 18:21:13

标签: csv graph jupyter-notebook pyhook

运行此代码后,出现此异常,但找不到任何可正确修复的地方

import networkx as nx
from networkx.algorithms import bipartite
import numpy as np
from pandas import DataFrame, concat
import pandas as pd
import matplotlib.pyplot as plt
from scipy.optimize import curve_fit 
import ast
import csv
import sys

def plot_degree_dist(G):
in_degrees = G.in_degree()
in_degrees=dict(in_degrees)
in_values = sorted(set(in_degrees.values()))
in_hist = [in_degrees.values().count(x) for x in in_values]
plt.figure() 
plt.grid(True)
plt.loglog(in_values, in_hist, 'ro-') 
plt.plot(out_values, out_hist, 'bv-') 
plt.legend(['In-degree', 'Out-degree'])
plt.xlabel('Degree')
plt.ylabel('Number of nodes')
plt.title('network of places in Cambridge')
#plt.xlim([0, 2*10**2])

我希望收到正确的图表,但我得到的只是这个警告

  File "<ipython-input-32-f89b896484d7>", line 2
    in_degrees = G.in_degree()
             ^
IndentationError: expected an indented block

1 个答案:

答案 0 :(得分:0)

Python依靠适当的缩进来识别功能块。该代码应该可以工作:

import networkx as nx
from networkx.algorithms import bipartite
import numpy as np
from pandas import DataFrame, concat
import pandas as pd
import matplotlib.pyplot as plt
from scipy.optimize import curve_fit 
import ast
import csv
import sys

def plot_degree_dist(G):
    in_degrees = G.in_degree()
    in_degrees=dict(in_degrees)
    in_values = sorted(set(in_degrees.values()))
    in_hist = [in_degrees.values().count(x) for x in in_values]
    plt.figure() 
    plt.grid(True)
    plt.loglog(in_values, in_hist, 'ro-') 
    plt.plot(out_values, out_hist, 'bv-') 
    plt.legend(['In-degree', 'Out-degree'])
    plt.xlabel('Degree')
    plt.ylabel('Number of nodes')
    plt.title('network of places in Cambridge')
    #plt.xlim([0, 2*10**2])

根据您的样式要求,基本上只缩进2或4个空格。