PythonでDropWhileを使用して実践しています。例えばDropWhileは2つの特定の行の間で抽出します。
これはファイルの行の場合:
Test1
Test2
Test3
Test4
Test5
Test6
Test7
Test8
Test9
Test10
そして私はTEST5とTEST8の間に線を引き出したいです。
私はこれを別の方法で行う方法を知っています(ファイル内の行...最終行の番号を取得します。行> 5 ...の場合は行< 8 ... print);私は特にDropWhileを使って練習したいと思っています。
私はこれにいくつかの異なる方法を試してみましたが、私はそれを動作させるように見えることはできません。
例えば
これは機能しません。すべての行が出力されます。
私が代わりに別の関数を使用してのdropwhileラインの長いラムダ式を使用しようとしましたが、私はこのようなものでしたときに別の方法:(
for line in dropwhile(lambda line: 5 < int(line.strip()[-1]) < 8, dataset):
を私は一つだけの式を持っている場合は、このコードが動作するにはつまり、int(line.strip()[ - 1])> 5またはint(line.strip()[ - 1])< 8です。
誰かが私のテストデータセットでTest5とTest8の間の線を引っ張るためにDropWhileを使って私にpythonicの方法を教えてもらえますか?
filter(lambda line: 5 < int(line.strip()[-1]) < 8, dataset)
状態が1時間に達するとDropWhileが停止しますので、リストはの残りの部分を持っていきます。
また、ジェネレータ式を次のように繰り返します。 'for line in(5
jedwards