预期缩进块异常

Expected an indented block Exception

在 运行 这段代码之后,我得到了这个异常,但我没有找到任何正确修复它的地方

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

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 个空格即可。