LoginSignup
3
3

More than 5 years have passed since last update.

進捗どうですかブーム??にPythonでのりかかってみる

Posted at

はじめに

進捗どうですかがブームらしい

「進捗・どう・です・か」をランダムに表示し「進捗どうですか」が完成したら煽ってくるClojure
「進捗・どう・です・か」をランダムに表示し「進捗どうですか」が完成したら煽ってくるプログラム
「進捗・どう・です・か」をHaskellで書いてみた
進捗どうですかブーム?にrubyでのっかってみる

というわけで

Pythonで書いてみました.ただ書くのもアレなので,普段殆ど使わない(リスト内包表記が便利すぎて)lambda式を意味もなく使ってみました.

コード

shinchoku.py
 #coding: utf-8

import random


li =  ["進捗","どう","です","か"]
LI_RAND_LENGTH =  len(li)-1
CHECK_NUM      = -len(li)
ret = []
itr = 0

shinchokuStr    = lambda       : li[random.randint(0,LI_RAND_LENGTH)]
appendShinchoku = lambda l     : l+[shinchokuStr()]
last4Strs       = lambda l     : "".join(l[CHECK_NUM:])
loopCheck       = lambda x, y : last4Strs(x) == last4Strs(y)

while(not loopCheck(li,ret)) :
    ret = appendShinchoku(ret)
    itr += 1
    print ret[-1],  
print "\n"+str(len("".join(ret))/3)+"文字で煽られました"

実行結果

$ python shinchoku.py
です どう か か です 進捗 どう です どう か です です か どう か どう 進捗 です どう どう 進捗 進捗 です です 進捗 どう です どう 進捗 です か 進捗 進捗 進捗 か どう です どう か か どう 進捗 です です 進捗 どう どう 進捗 進捗 進捗 です 進捗 か どう か か か か です どう か どう です か か です です 進捗 どう 進捗 です です か どう か か 進捗 進捗 進捗 か どう か 進捗 進捗 進捗 です 進捗 です どう どう か 進捗 どう か どう 進捗 です どう どう か か 進捗 です か どう 進捗 です どう 進捗 どう どう 進捗 進捗 です 進捗 です か 進捗 です どう 進捗 どう です どう どう どう です 進捗 進捗 進捗 どう どう 進捗 進捗 どう か 進捗 どう 進捗 どう どう です です 進捗 進捗 です どう か か です どう か か 進捗 です か どう 進捗 です です か か です 進捗 です どう です 進捗 です どう どう どう か です か か です か です 進捗 か どう 進捗 進捗 か どう か 進捗 どう か どう か どう どう 進捗 進捗 どう か か どう です どう です です か か 進捗 進捗 か か 進捗 です です どう 進捗 です か か か です です 進捗 進捗 です どう 進捗 進捗 です 進捗 進捗 進捗 です どう 進捗 進捗 か か か か 進捗 です 進捗 か 進捗 か です どう 進捗 です どう か どう どう か 進捗 進捗 どう です どう です 進捗 か どう か 進捗 進捗 どう か です 進捗 か か どう 進捗 です です 進捗 か 進捗 か です です どう どう です か です です です 進捗 です どう か か どう どう 進捗 です どう どう どう です 進捗 です どう か どう か です 進捗 どう 進捗 進捗 か です か か か か か か です です 進捗 進捗 どう か です か です です です どう か 進捗 どう か 進捗 です です か です です か です です 進捗 進捗 か どう か か どう か か です です です どう 進捗 進捗 進捗 どう か 進捗 です 進捗 か か 進捗 どう どう 進捗 どう です か
656文字で煽られました

感想

lambda式楽しい.そういえば,Haskell勉強するとかどうとか言ってたので,勉強したい.あと,Pythonの文字列の長さが文字コード(?)関係で色々あるらしいbyte数とかなんとか.とりあえず,動いたのでマジックナンバー入れておきました.

3
3
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3