CATEGORY TIPS

MySQL datetime型に現在日時をinsert

今回は短いtipsです。 MySQLにデータをinsertする際、レコード作成日時等に現在の日時を指定することがよくあります。 カラムのデフォルト値にCURRENT_TIMESTAMPを設定したり、sqlでnow()関数...

文字列のゼロパディング(ゼロ埋め)

なんらかのIDやコードを採番する際、桁数を合わせるため整数の文字列に対してゼロパディング(ゼロ埋め)をしたい場合があるのではないでしょうか?pythonには色々な方法が用意されています。 ゼロパディング printf形式...

スリープする time.sleep

スクレイピングでインターバルを取る等、実行中の処理を一時的にスリープしたい場合があります。以前ご紹介した標準モジュールのtimeには、時刻データへのアクセス以外にスリープ機能があります。 引数に秒を指定します。小数点の指...

あまり良くない書き方 その3 getter/setter

他のオブジェクト指向プログラム言語、特にJavaようにカプセル化を是とする言語をメインで経験された方は、クラスのメンバにアクセスするためのgetter、setterメソッドを実装してしまいがちですが、pythonではどの...

あまり良くない書き方 その2 関数外の長い処理

ある程度プログラムを書ける人であればプログラムの規模に応じて適切な単位で関数、クラス、モジュールを分割しますが、そんな人でも分析バッチや移行バッチのように使い捨てでプログラムを作成する場合、ついつい長い処理の塊のスクリプ...

あまり良くない書き方 その1 変数名

個人的に、コードはどう書こうが期間内に目的が達成できればそれで良いと考えているのですが、あまりにも考えずに書くと色々思わぬトラブルに見舞われてしまう場合があります。 まずはクイズからです。以下のサンプルコードは実行すると...

リストをカンマ区切りの文字列に変換する

joinメソッドmap関数+str関数 データ分析時、途中結果が格納されたlistをCSVやTSVでダンプしたい、という場合がよくあります。 listの要素が文字列だけの場合 文字列だけの場合は以前学習したjoinメソッ...

URLからドメイン名を抽出する

urlparse URLをパースする 仕事でURLのリストをドメインごとに集計するために使った方法を紹介します。以下のプログラムは、指定されたURLについて標準モジュールのurlparseを使用した後、フォーマットするこ...