読者です 読者をやめる 読者になる 読者になる

pythonと過ごすめろの日記

日記といっても毎日書けません。

パスワードにも使える。ランダムに文字を表示する!

今回は指定した文字をランダムに表示させてみようと思います。

とても簡単でわかりやすいです。

 

from random import choices
num = choices('abcdefghijklmnopqrstuvwxy!$%&)*+,/;<=>?[]^{}~',k=10)
num = ''.join(num)
print(num)

このプログラム文でできると思います。

*バージョンによってはできない可能性があります。3.6でしか確認していません。

1行目from random import choices について。

普通だとimport randomだけですよね?でもこの文だとrandomごとモジュールしてしまうのでrandomの中のchoicesだけimportさせています。

 

二行目はnumに選んだものを入れています。

書き方はchoices('選ぶ文字',k = 文の長さ)

たとえばABCDの中から13文字をランダムに選びたいとき

choices('ABCD',k = 13)

でいけますね

やったねたえty((ry

3行目ここが一番のポイントかな?

この分を抜かしてしまうとこうなります。

f:id:honkemero:20170403210005j:plain

これじゃ見にくいってことで文字列リストを結合しちゃいましょう!

ということで書く文が

''.join()

です。

numにはいっている物を結合したいので

''.join(num)

こう記述すればいいですね

4行目

これは簡単ですねprint文で結果を出力しています。

今回は簡単だったのではないでしょうか?

ちなみに実行結果はこうなります。

f:id:honkemero:20170403210536j:plain

正常に動きました。