裏 RjpWiki

Julia ときどき R, Python によるコンピュータプログラム,コンピュータ・サイエンス,統計学

演算の意味をよく考えて,簡潔な記述を

2020年12月23日 | ブログラミング

Python のプログラム例を披瀝するページで以下のようなプログラムを見かけた。

余計なカッコがあったりして,演算がごちゃごちゃしているのと,「整数除算演算子」と「整数剰余演算子」をご存じないようなのが仇をなしているのだ。

# 秒を入力するとHH:MM:SSの形式の文字列で出力する関数
def sec_to_time(sec):
    h = int(sec / 3600)
    m = int((sec - (3600 * h))/60)
    s = int(sec - (3600 * h) - (60 * m))
    rtx = '{:02}h {:02}m {:02}s'.format(h, m ,s)
    return rtx

これを以下のように書き換えるとわかりやすい。

def sec_to_time2(sec):
    h = sec // 3600
    m = sec % 3600 // 60
    s = sec % 3600 % 60
    rtx = '{:02}h {:02}m {:02}s'.format(h, m ,s)
    return rtx

コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« リスト要素の複数削除(Python) | トップ | range() と numpy.range() --... »
最新の画像もっと見る

コメントを投稿

ブログラミング」カテゴリの最新記事