-2

txt ファイルが次の行で構成されているとします。

A
  1
  2
  3
B 
  1
  2
  3
C
  1
  3

明らかに、txt ファイルの C には 2 がありません。欠落している2を検出して出力するアイデアは何ですか? txt ファイルを 1 行ずつ読み取る必要があります。

ありがとうございました !

4

2 に答える 2

0

おそらく、次のようなものが必要です。

line_sets = []
file_names = ['a', 'b', 'c']

# read content of files, if you need to remember file names, use
# dict instead of list
for file_name in file_names:
    with open(file_name, 'rb') as f:
        line_sets.append(set(f.readlines()))

# find missing lines
missing_lines = set()
for first_set, second_set in itertools.combinations(line_sets, 2):
    missing_lines.add(first_set - second_set)
print 'Missing lines: %s' % missing_lines
于 2012-07-16T10:13:45.580 に答える
-1

わかりました。ほとんどの人にとって、質問は明確ではないと思います。とにかくここに私の解決策があります:

各セクションの値をforループ内のリストに追加します。たとえば、セクションAでは、リストに1、2、3が含まれます。セクションCのリストの長さは2になります。したがって、セクションCに値がないことがわかります。ここから、印刷できます。セクションC.誤解してすみません。この質問は正式に近いです。とにかくビューをありがとう!

于 2012-07-16T08:09:00.973 に答える