2016-07-20 2 views
-2

私はPython 2.7の初心者です。私はPythonの行数計算コードに1つの質問をお願いしますか? 以下の理由、特にforループがファイルハンドルで何をしているのかを理解する方法を直感的に理解できますか?Pythonの行数

多くのおかげで、すべての

fhand=open('test.txt') 
count=0 
for line in fhand: 
    count=count+1 

print count 
+0

for fhand: print line – Eska

+0

ファイルオブジェクトに対する反復処理がPythonでどのように機能するかについて調査しましたか? – TigerhawkT3

+0

ファイルオブジェクト、または変数代入やインクリメントを含むブロック内のすべてを繰り返し処理することについての質問はありますか? – TigerhawkT3

答えて

2

open()fileオブジェクトを返します。

count=0は、0の値でcountという変数を初期化します。

fileオブジェクトのドキュメントにあるように、forループを使用すると、ファイルの内容が1行ずつ表示されます。 (file objects are iterableです。)

count=count+1は、count変数に1を追加します。

print countcount変数の内容をダンプします。 file object

+0

これは、直観よりも論理的にも似ています。 – Arnial

0

は、ファイルの各行を返すであろう使用イテレータです。したがって、forループのカウントは、ファイル内の行数を単にカウントします。

0
fhand=open('test.txt') # Opens the file and puts the content of it in the "fhand" variable 
count=0 # Creates new variable "count" and sets it to 0 
for line in fhand: 
    count=count+1 # Increase count by 1 for every line in the file 

print count # Prints the amount of lines 
0

ファイルを開くと、その内容にアクセスできます。

fhand=open('test.txt') 

上記の作業があります。

count=0 

あなたは変数が0の値に設定し、それがループに入ると、

count=count+1 

がそれにするたびに+1を追加していることを意味し、0までカウント初期化します。

for line in fhand 

上記のコードは反復用です。これはファイルfhandの各行をループし、反復ごとに+1してカウントします。

反復が完了すると、カウンタの値を使用すると、行数のカウントを取得するために、後に印刷され、設定されています。