コピペ用 Python ミリ秒を時:分:秒の文字列に変換する

コピペ用のサンプルコードです。
ミリ秒を時:分:秒のフォーマットにして返します。

def millSecToStr(millSeconds):
    m, s = divmod(millSeconds / 1000, 60)
    h, m = divmod(m, 60)
    str_duration = "%d:%02d:%02d" % (h, m, s)

    return str_duration


#例
str_time = millSecToStr(10000000)
print(str_time)

#2:46:40 が出力されます。

リストと文字列をフォーマットして表示させる

リストを文字列として表示させたい場合が往々にしてあると思います。

format 関数を使うと簡単にできます!ヾ(´ω`○).

win_list = ["blue","eyes","white","dragon"]
print("順番リスト{}".format(win_list))

#次が出力されます。
#順番リスト['blue', 'eyes', 'white', 'dragon']

文字列を混ぜたい場合は、下記のようにもできます。

player = "kaiba"
win_list = ["blue","eyes","white","dragon"]

print("勝利 %s 順番リスト{}".format(win_list) % player)

#次が出力されます。 
#勝利 kaiba 順番リスト['blue', 'eyes', 'white', 'dragon']

Python for XX in range(n)は0から始まるのか1から始まるのか

毎回忘れてしまうので、書いておきます。

結論から言うと、0から始まり、n-1で終わります。

n = 6
for x in range(n):
    print(x)
#0,1,2,3,4,5が出力される

どっちかというと、range()関数が何から始まるのか、という問題なんですけどね(^_^;

range関数に引数を一つだけ渡すと

「0を起点にし、引数より小さい整数までの数列を作成」

します。

Git ローカルにないリモートブランチに切り替えるコマンド

今更いうことでもないとは思うんですが、毎回ググってるので書いておきます。(^_^;
Gitクライアントが死亡しまくって、仕方なくGitをコマンドプロンプトから使っています。

git fetch

してからの

git checkout "ブランチ名"

です。
ブランチ名が、”hotfix”だとすると

git checkout hotfix

です。

Python リストの中に関数を書く

最初に、なんだ?これ… と思ったのが

counts = [self.Nsa[(s,a)] if (s,a) in self.Nsa else 0 for a in range(self.game.getActionSize())]

これ。

これ、リスト内包表記というらしいです。

そういえば、勉強会で聞いたことがあるぞっ!

リストの中で関数を実行して、その結果をリストの中に入れてリストを作成できる、夢のような仕組みです。

もうちょっと簡単な例がいいと思うので、下記の例です。

square = [x ** 2 for x in range(10)]
print(square)

#[0, 1, 4, 9, 16, 25, 36, 49, 64, 81] を出力

まず、for文の中で0~10までのカウントがされ、それが一つずつ二乗されてリストに収まります。

慣れればこの方が早い場合があるでしょうが、あんまり複雑なのは私は好きではありませんね!!(´ω`)

続きは下記です。

Python リスト内包表記2 リストの中に複雑な関数を書く