bisect_right()を使用してtxtファイルを検索しています。 テキストファイルの各行には、次の文字列 "word1 word2(tab)number"が含まれています。つまり、空白(word1とword2)、タブ、および数字で区切られた2つの単語です。 ファイルをreadlines()でリストとして読みました。 パラメータ "word1 word2"(word1(空白)word2)でbisect_rightを使用して、リスト内の(サブ)文字列 "word1 word2"が見つかったインデックスを検索しています。 bisect_rightは正しい場所を見つけるように見え、右側にインデックスの代わりに(サブ)文字列が置かれている実際のインデックスを返します。 (副)文字列(word1(空白)word2)がリストに存在する場合、bisect_rightは右にインデックスを戻すべきではありませんか?部分文字列を検索するときに問題になることはありますか?Python 2.6 bisect_rightインデックス(index + 1)の代わりにインデックスを返す
0
A
答えて
1
bisectモジュールを使用した検索では、インデックスではなく「挿入ポイント」が返されます。挿入ポイントは、との間の2つの値です。これはこのように使用されることを意図していますs.insert(i, 'new value')
。
挿入ポイントの代わりに、シーケンス内の値のインデックスを検索する必要があります。ドキュメントの例では、これを行う方法を示すために:http://docs.python.org/library/bisect.html#searching-sorted-listsもちろん
、すべてのみ動作リスト・オブ・ストリングは、バイナリサーチの前にソートされますが、あなたはおそらく既にその:-)を知っていれば
関連する問題
- 1. インデックスの代わりに列挙を返します
- 2. def next()for Python 2.6より前? (object.nextメソッドの代わりに)
- 3. Rails 3.2.3パブリックから静的ページの代わりにインデックスを返す
- 4. なぜリスト "<T>.Insert(index、T)"がインデックスの代わりにリストの最後に追加されますか?
- 5. はインデックスされたビューに代わる
- 6. ホームページの代わりに/ pageのインデックスに行くドメイン
- 7. 製品/インデックス/ 23の代わりにApple/ipad製品を達成
- 8. GridViewの行の評価:名パラメータの代わりにインデックス
- 9. 目的コードCの配列の代わりにインデックス
- 10. DrupalのApache Solrの代わりにバージョン別インデックス
- 11. D3.js:データインデックスの代わりに選択インデックスを取得するには?
- 12. 複数の行の代わりに1行を返します
- 13. 列名の代わりに列インデックスでデータフレームの列を呼び出す - パンダ
- 14. ポインタアドレスは16進数の代わりに1を返します
- 15. 1つのインデックスの代わりに別々のPHPページを使用する理由
- 16. インデックスを使用してjQuery配列から(DOMの代わりに)jQueryオブジェクトを返します
- 17. PHP 2次元配列は値の代わりにインデックスを出力します
- 18. 返された配列インデックスは、行数の代わりにレコードIDを使用します
- 19. MacでPython 2.7でパッケージをインストールし、Python 2.6パッケージの代わりにそのパッケージを使用する
- 20. パンダ1行ピボットテーブルはデータフレームの代わりにセリを返します
- 21. データトリガーによる代替インデックス
- 22. wordpressのindex/profileページの代わりにプラグインページにリダイレクト
- 23. GridView.Columns [index] .HeaderText "インデックスが範囲外です"エラーを返します。エラー
- 24. Ruby on Rails link_toの代わりにIndexに向ける
- 25. いつMYSQLの1つのインデックスよりも2つより良いインデックス
- 26. Pythonの - はAttributeError:インデックス
- 27. Python 2.7xジェネレータがブールリストの "False"のインデックスを返します
- 28. リストを返す[i] = iリストのインデックス
- 29. Zインデックスすなわちプレースホルダ
- 30. Clustered Index Scanの代わりにClustered Index Seekを取得するにはどうすればよいですか?
文字列のみを本当に解析しているのであれば、 'split()'と[関連する文字列メソッド](http://docs.python.org/library/stdtypes.html#string-methods)を使用する方が、物事と – brc