新を発見し、誰もが私を助けることができればと思いまして。「私は1つの行を使用して、以下のコードで見つかった行数を印刷したり、返却しようとしている印刷数は、ここでは、プログラミングに
をし、私ができますそれを理解する。
query = raw_input("Enter string to search for: ")
for line in open("list2.csv"):
if query in line:
print line,
新を発見し、誰もが私を助けることができればと思いまして。「私は1つの行を使用して、以下のコードで見つかった行数を印刷したり、返却しようとしている印刷数は、ここでは、プログラミングに
をし、私ができますそれを理解する。
query = raw_input("Enter string to search for: ")
for line in open("list2.csv"):
if query in line:
print line,
このようなリストの内包表記を使用します。
with open("list2.csv") as f:
print(sum(query in line for line in f)) #gives number of lines found
ありがとう!まさに私が探していたものです。 – Exempt
ほんのちょっとした提案です:リストcompがあれば、genexpを使用してください。 'sum(fの行の問い合わせ)'。 'bool'の中間リストは必要ありません –
同じ質問がありましたが、ここで尋ねた:ここ
How to get line count cheaply in Python?
は、スレッドが提供する方法であって、
def file_len(fname):
with open(fname) as f:
for i, l in enumerate(f):
pass
return i + 1
検索はあなたの友達です:)。
わかりやすくするために、1行だけを避けることをお勧めします。
query = raw_input("Enter string to search for: ")
print "Number of lines:", len([line for line in open("list2.csv") if query in line])
ない、これが最良の選択肢であるかどう必ず、それが最も簡単です:あなたは本当に、単一の行を望んでいた場合は、次の操作を行うことができ
query = raw_input("Enter string to search for: ")
lines = []
for line in open("list2.csv"):
if query in line:
lines.append(line)
print line,
print "Number of lines:", len(lines)
:ここでは動作するはずのものです。
if
ステートメントを実行するたびに+1するように、if
ステートメントにカウンタを追加します。あなたはとにかくファイル全体を読み込む必要がありますが、あなたは、リストの内包表記を使用して、単一の行でそれを行うことができます
counter = 0
query = raw_input("Enter string to search for: ")
for line in open("list2.csv"):
if query in line:
print line
counter += 1
return counter
:
はこれを試してみてください。私の答えを見てください。 – trans1st0r