BETA

【Python】18桁の整数をランダム生成する

投稿日:2019-05-24
最終更新:2019-05-24

何桁でも使える方法ですが、
例えば Discord のユーザ, チャンネル, メッセージ等に割り振られているIDは、
いずれも18桁の整数と決まっています。
(稀に例外がありますがその説明は割愛します)

何かとダミーのデータが必要になる場面があると思うので、
Pythonを使って自動で生成する方法を紹介します。

ソースコード

from random import randint  
number = 8  
limit = int('1' + '0' * 17), int('9' * 18)  
for _ in range(number):  
     print(randint(*limit))  

整数をランダム生成するので、random.randint を利用します。
ここでは number に指定した数だけIDをランダム生成しています。

randint の引数に下限と上限を渡すのですが、
愚直に 100000000000000000, 999999999999999999 と書こうとすると、
桁数が合っているかチェックするのも面倒ですしバグの元になるので、
int('1' + '0' * 17), int('9' * 18) と定義します。

因みに (10 ** 17), (10 ** 18 - 1) とする方法もあります。
お好みの方法でどうぞ。

技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
駆け出しエンジニアからエキスパートまで全ての方々のアウトプットを歓迎しております!
or 外部アカウントで 登録 / ログイン する
クランチについてもっと詳しく

この記事が掲載されているブログ

備忘録のようなもの

よく一緒に読まれる記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう
目次をみる
技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
or 外部アカウントではじめる
10秒で技術ブログが作れます!