私が見つけようとしているプログラムの早い段階でエラーがありましたが、コードのこの部分で何が起こっているのかを説明するように求められました。以下はコードとそれが何をしていると思うかですが、いくつかの点で不明確です。理解に役立つ情報をいただければ幸いです。
for title in titles:
secString = 'sec_%02d' % (title)
titleCitations = [c for c in cEdges if secString in c[0]]
intraCitations = [c for c in titleCitations if secString in c[1]]
print title, len(titleCitations), len(intraCitations), len(titleCitations) - len(intraCitations)
まず、secStringは、'sec_%02d'
タイトルに関して残りを取ります(これは、タイトルへの参照を持つすべての文字列を検索しているだけだと思いますか?)。次に、リストのタイトルを作成します。
括弧で囲まれた部分に戸惑いますが。私が正しく理解していれば、それは与えられた米国の法典参照からの数字のペアの単なるリストであると私が信じるcEdgeを取ります。つまり、26 USC 501はちょうど(26、501)になり、secStringがcに値を持っているかどうかを尋ねます[0]スポット。
(ここで混乱します。c[0]スポットは上記の例の26に対応し、c [1]は501に対応すると思いますか?もちろん、理解しているかどうかさえわかりません。 c部分が正しくあります。)
次に、c [0]スポットが埋められている場合は、タイトルに入れます。次に、引用内リストを作成します。このリストはtitlecitationsリストを見て、secStringにc [1]が入力されているかどうかを尋ね、入力されている場合はこのリストに入れます。
タイトル引用とイントラ引用は同じリストであるように見えるので、何かに問題があることを私は知っています。