ホームページ > バックエンド開発 > Python チュートリアル > Python は、現在の時刻と乱数を使用して一意の数値を生成する方法を説明します

Python は、現在の時刻と乱数を使用して一意の数値を生成する方法を説明します

巴扎黑
リリース: 2017-09-21 11:08:52
オリジナル
2268 人が閲覧しました

この記事では、Python の現在時刻と乱数を使用して一意の数値を生成する方法を主に紹介します。これには、Python の時間と乱数関連の操作スキルが含まれます。この記事の例は、Python の方法を説明します。現在の時刻と乱数を使用して一意の番号を生成します。参考として皆さんと共有してください。詳細は次のとおりです。

Python で現在時刻を生成するのは非常に簡単で、Java のコードよりもはるかに短いです。Java Get Current を参照してください。システムイベント System.currentTimeMillis() メソッド"

具体的なコードは次のとおりです。 :

#-*-coding:utf-8-*-
import datetime
now = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
print now;
ログイン後にコピー

実行結果は次のとおりです。現在時刻が出力され、時刻形式は

に従って決定され、対応する形式がC言語のprintf文と同じくらい簡単です。

strftime("%Y-%m-%d %H:%M:%S")

Python は次のステートメントを使用して一意の乱数を生成できます:

import random;
print random.randint(0,100);#生成的随机整数n,其中0<=n<=100
ログイン後にコピー

これによると、現在の時刻と乱数を使用して、ファイルのアップロードなどの場合に一意の番号を生成できます。ファイルの生成など。

極端な状況を考慮すると、1,000 人のユーザーが 1 秒以内にファイルをアップロードした場合、競合が発生しない最良の状況は、現在時刻 + 0 ~ 1000 のランダムな整数を使用して乱数を構築することです。

注目すべき唯一のことは、結合時間と文字列を直接加算するのではなく、結合する前に文字列に変換する必要があることだけです。Python には変数宣言がないため、直接加算は数値の加算になります。

また、乱数がランダムに 10 未満の場合は、生成される桁数が同じになるように、ランダムに生成された数値の前に 0 を追加する必要があることにも注意してください。

具体的なコードは次のとおりです。

#-*-coding:utf-8-*-
import datetime;
import random;
nowTime=datetime.datetime.now().strftime("%Y%m%d%H%M%S");#生成当前时间
randomNum=random.randint(0,100);#生成的随机整数n,其中0<=n<=100
if randomNum<=10:
  randomNum=str(0)+str(randomNum);
uniqueNum=str(nowTime)+str(randomNum);
print uniqueNum;
ログイン後にコピー

次の Python プログラムは、for を使用して、1 秒以内に生成された結果をテストする 10 個のテスト ケースを設定します。 コードは次のとおりです。

#-*-coding:utf-8-*-
import datetime;
import random;
for i in range (0,10):
  nowTime=datetime.datetime.now().strftime("%Y%m%d%H%M%S");#生成当前时间
  randomNum=random.randint(0,100);#生成的随机整数n,其中0<=n<=100
  if randomNum<=10:
    randomNum=str(0)+str(randomNum);
  uniqueNum=str(nowTime)+str(randomNum);
  print uniqueNum;
ログイン後にコピー

実行結果は次のとおりです。生成された数値がどれも同じでない場合があります:

以上がPython は、現在の時刻と乱数を使用して一意の数値を生成する方法を説明しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート