乱数を生成するにはどうすればよいですか? 私は何千もの数のセットを持つTXTファイルを持っており、これらを避けながら一連の乱数を生成する必要があります。すでに使用されている数字を避けながら乱数を生成する方法
IE、TXT-0102030405
私の乱数はこの番号を避ける必要があります。
サイドノートでは、TXTの10桁の数字を5桁の数字に分割するにはどうすればよいですか? それから、どのように乱数を生成することができますか?
乱数を生成するにはどうすればよいですか? 私は何千もの数のセットを持つTXTファイルを持っており、これらを避けながら一連の乱数を生成する必要があります。すでに使用されている数字を避けながら乱数を生成する方法
IE、TXT-0102030405
私の乱数はこの番号を避ける必要があります。
サイドノートでは、TXTの10桁の数字を5桁の数字に分割するにはどうすればよいですか? それから、どのように乱数を生成することができますか?
以前に見つかったすべての乱数を辞書にロードし、辞書内のnew_randomが新しい乱数を試しているかどうかを確認するだけです。
あなたの10桁の数字が変数ten_digitsに格納されているとします。
ten_digits = '1234567890'
あなたがIDとして数字を使用してい
[x + y for x, y in zip(ten_digits[::2], ten_digits[1::2]
>>> ['12', '34', '56', '78', '90']
を行うことによって5つの2桁の数字にこれを破ることができますか?おそらく、ハッシュテーブルの使用を検討する必要があります。
http://en.wikipedia.org/wiki/Hash_table
私は、Pythonとひどく慣れていないが、私はあなたが(引数として)コピーする部分文字列と文字の数を開始するインデックスをそれを与えることができSUBSTRING関数があると確信しています。
ファイルを維持する必要がある場合は(新しい番号を追加するために)、私はプレーンテキストファイルを使用して "忘れ"て、SQLiteやその他の埋め込まれたDBおそらくメモリ内のすべての数値をロードしたくないからです。
SQLiteの "機能"(またはそれより優れたデータ構造)はBツリーであるため、数字をすばやく取得できます。私はこれを言っています。なぜならBツリーを実装するライブラリを見つけようとすると、SQLiteが必要ないからです。
あなたはあなたのリストが比較的小さい場合は、setにそれをロードし、それに対してチェックできます:あなたが何を意味するん
s='0102030405'
n=2
result = [s[i:i+n] for i in range(0, len(s), n)]
:
あなたがスライスを使用することができます番号を分割するには5桁の数字に基づいて乱数を生成しますか?あなたはこれらの5桁の数字を避けることを意味しますか?注釈の – arunkumar
では、txtドキュメントのすべての数字はCSVです。 これらは次のようになります。 "0102030405" 1 "0202030405" 4 – mike
はい、TXT番号全体を避ける必要があります。 – mike