とまと あんらいぷ…

エンジニアの活動記録とかつぶやきとか

GitHub

Python withを使ったファイルの読み書き(お作法)

WindowsでPython シリーズ その27


前回はファイル操作の基本的な記述を書きましたが、
今回はより実践的な、というよりも必須の記述を学びます。

前回のコード


前回は以下のようなコードでした。


この書き方は、確かにお目当ての動作はするのですが、実践ではこんな書き方をしてはいけません。

ファイルを安全に必ず閉じる記述が必要


全てのプログラム言語において、プログラムの動作とは別の何かを操作する場合、
必ずその別の何かを安全に開放する処理を記載する必要があります。

例えばファイル、データベース、OSそのもの、など。
Python言語だけで完結しない(Pythonからすれば)外部のモノを操作する時に
Pythonが外部のモノを壊したりしないように考慮する必要があります。

「借りたものは大切に扱う」

そんな感じですね。

ファイルが必ず閉じるようにする記載


前回のプログラムを書き換えます。

try .. finally でやった、途中で、例えば何かプログラムに不具合があっても、必ずファイルがクローズされる finally を書きます。



実行結果
Python ファイルの読み書きのお作法

実行結果は特に差はありませんが、
もし、ファイルの書き込み中にエラーが発生しても、必ず f.close() が呼び出されるようになります。

更に実践的なwith句でスコープ管理


さらにプログラムを書き換えます。



ファイルを操作する時は、この書き方が基本だと認識しておいてください。

書き方の例はこの当たりを参照

先ほどと違って、try ~ finally がなく、更に f.close() がありません。
それでも、withのブロックが終わる時にファイルが閉じられます。

なぜか?

with句 を使えば、自動的必ずf.close() が呼ばれる事が保証されているからです。

Pythonというプログラム言語の実装は、PEP 343 というコーディング規約を規範にしています。

これによると、外部のナニかを操作する時は、try ~ finally を実装し、
with句によって、finally が呼ばれることを保証するというコーディングが推奨されており、Pythonはそれに準拠しているからですね。

withの最後で何が呼ばれるかをどうやって定義しているの?


ここで気になることがあります。
withを指定すれば、最後にclose()が呼ばれるということは分かった。

だけど、例えば自分で同じような処理を実装する時に
どうやって finally (つまりwithブロックの終わりに) でclose() が呼ばれることを保証する定義をするの?

というのが次の疑問です。

うん、正直、まだ調べてないんだ!
C# で言うところの、IDisposeインターフェース的な定義があるんだろうと思ってます。
これはまたの機会に!

今回はファイル操作を行う時はwithを使う。それだけを記憶の片隅に置いておきます!

テーマ:プログラミング - ジャンル:コンピュータ

バイクのユーザー車検~大阪運輸支局で車検を受けてきた!

はじめてのユーザー車検


400以上のバイクに乗ると必ずついてくるもの。それが車検。
バイク屋さんに見積もりを出してもらうと、だいたい5~9万円ぐらいの見積もりが出てきます。

バイク乗りとしては普段のメンテナンスは自分でやってるし、
車検に関係なく、調子が悪い場合は信用できるバイク屋さんに見てもらってます。
それを車検の時だけ改めて全部点検してもらって、高額な費用を支払うというのはなんとなく納得しにくい。

私は中古でバイクを買ったんだけど、購入からかなり短い期間で車検が必要でした。
購入時「納車整備」といって、普通に走れるレベルには整備されます。
だからそれが拍車をかけて「車検のための整備」に4万を超える金額に納得できなかったんです。

というわけで、自分で車検に行ってきました。
それが「ユーザー車検」というものらしい。

全く何も知らない状態からのユーザー車検

今回はそんな備忘録を書いてみます。

車検に向けて


まずは購入店にどれぐらいの整備をしたか確認しました。
すると車検に通るレベルには調整してくれたとのこと。
このまま車検に持っていっても大丈夫と言われました。
(このあたりはいいバイク屋さんで購入できたのかな?)

で、とある事情により、購入店とは別のバイク屋さんで車検見積もりを出してもらった結果がコチラでした。
必須点検内容料金
車検基本料金\14,000
ブレーキフルード交換\2,320
スパークプラグ点検\600
ヘッドライト調整\2,000
CO/HCテスト(排気ガス測定)\1,400
排気騒音テスト\2,000
ファイナルギアオイル交換\1,240
電装系不調診断\1,300
検査手続き代行料金\18,400
*自賠責・重量税・印紙\17,020
合計\60,280


うーん。合計で6万円です。
これはなかなかの出費です。

諸々の工賃は普通に整備に出してもかかるから仕方ないとしても、
基本点検と代行手数料だけで32,400円ですね。

しかし、バイクを買ったばっかりなのでオイル系、プラグ系はそもそも問題ないし
電気系も普通に動いてるし、
排気ガス、騒音に関してはどノーマルのため、間違いなく通るはずなのです。

車検で絶対に必要な費用を見てみる


バイク屋さんの見積もりを鵜呑みにせず、
ユーザー車検を行った場合の費用をインターネットで諸々調べてみました。

結果としては上の表の必須「*」列だけでいけそうでした。
2万円以下です。
私の収入が1日に4万円を超えるのであれば間違いなくバイク屋さんにお願いしたでしょう。
しかしそんな稼げる自信はない!
というわけで、費用対効果を加味して自分でやることに決めた!

初めての車検でやったこと


不安なので色々調べました。

やることは、

1.バイク整備して、

2.書類を揃えて、

3.運輸支局で手続きを行う。

この3ステップです。
順番に書いていきます。

メンテナンスノート(点検整備記録簿)の作成


メンテナンスノート
侮ってましたが、ユーザー車検で結構見られました。

法的にはバイクの点検は12ヶ月点検と24ヶ月点検が義務付けられているみたいです。
点検不足のバイクで公道走ってると危ないもんね。

バイクを買った時にもらった書類を漁りました。

私が中古で購入したバイクの前のオーナーさんはかなりきっちりやってくれていて、
メンテナンスノートが完璧に記載されていました。
ありがとう前のオーナーさん!

前のオーナーさんの真似をして、
点検項目に従ってバイクの点検をします。

メンテナンスノート

バイクの点検方法については、この本を買って点検しました。



レビュー好評価の通り、初心者にとっては非常にありがたい内容でした。

メンテナンスノートがない場合は以下からダウンロードして印刷します。
24ヶ月定期点検記録簿
点検項目に従って自分なりに点検します。
チェーンのたるみとか、ブレーキが効くかとか、そんな簡単なところから、
自分でできない排気ガスの測定とかがあるので、無理な項目は×にしておくか、バイク屋さんで測定してもらいます。
私はノーマルマフラーなので自信たっぷりにそのまま車検場に持っていきました。

車検を終えた今だから言えることですが、正直なところそんなに厳密に見られませんでした。

全部のチェック項目が書類上網羅されているかそれが大事・・・というような感じでした。
いずれにしても後述する車検テストセンター(事前にバイク屋さんに依頼するより遥かに格安)で諸々整備してもらえます。

車検場に持っていく書類の事前準備


メンテナンスノートを書いたら、次は法的に必要な手続き書類の確認です。
全体で必要なのは以下の7点

1.車検証
2.納税証明書
3.点検整備記録簿(メンテナンスノート)
4.車検の予約
5.自賠責保険証(現在加入中のやつ。または次回車検までをカバーする期間のものを車検場で更新)
6.自動車重量税納付書(車検場で入手できる)
7.自動車検査票(車検場で入手できる)
8.継続検査申請書(車検場で入手できる)

4~7は車検場で手に入るので、1~3を揃えました。
3はインターネットからダウンロードするか、メンテナンスノートがあればそれを流用します。

1.車検証


車検証はバイク購入時にもらいましたので、そのまま所持品として装備しておきます。
もし紛失している場合は。。。再発行手続きを調べてみてください。でもなくさないよなぁ・・・

2.納税証明書


納税証明書

ネットの情報によると、マイナンバーがあれば納税の証明ができるので不要。
との情報が出回ってますが、バイク車検の場合は必要なようでした。
実際に車検場でも納税証明書を求められました。

通常、コンビニで重量税を収めた領収書があればそれで事足りるようですが
私は捨てていて手元にありませんでした。
やらかした!
というわけで、区役所に取りに行き発行してもらいました。
お金がかかると思ってましたが、費用はかかりませんでした。

3.点検整備記録簿(メンテナンスノート)


上述した点検整備記録簿(メンテナンスノート)は結構みられるし、
しつこく言われました。必ず作成しましょう。

4.車検の予約


大阪運輸支局へ行きました。
まずは、自動車検査インターネット予約システムで日程を予約します。これは必須です。
https://www.yoyaku.naltec.go.jp/pc/reservationTop.do

予約すると、予約番号がメールアドレスに送られてきます。
予約番号は「6.自動車検査票」に記載する項目があるので、きっちりメモしておきます。

いざ車検場へ


さて、書類を揃えて、ネット予約すれば、後は車検場に行くだけです。

近畿運輸局大阪運輸支局の場所はここです。


車検場へ・・・のその前に


水を指して申し訳ないですが、今回は車検場に行く前に
門真車検テストセンターさんに寄り道しました。



なぜここに行ったか。

ここでは、車検と同等のチェックをしてくれて、問題があれば整備してくれます。
つまりここでNGだった場合、車検もNGになる可能性が高いですし、
この車検センターで整備不可能な不具合が見つかった場合は、車検も通らない可能性が高いとのこと。

バイクの車検においては光軸が鬼門らしく、これがNGトップの原因のようなのです。
NGを食らってもその日のうちにクリアして再度車検を受ければ問題ないのですが、
一発で通したかったのでライトだけは点検してもらおうと。そんな試みです。

車検場からバイクで2分程度の場所にあります。

寝屋川テストセンター

ここは車の車検においてはここで殆どの事を調整できるらしいのですが、
バイクは光軸ぐらいしか調整できないとのこと。

そのためバイク車検を通す場合、光軸以外に不安項目があれば事前にバイク屋さんに見てもらいましょう。

不安を煽ってしまったかもしれませんが、
普通にドノーマルで乗ってて、普段の調子が悪くない場合は十中八九車検は通ると思います。

光軸について


光軸はヘッドライトの軸があってるかどうかの点検となります。
段差を走ったりするとすぐにズレるので、最も落ちやすい点検項目のようです。
上にも書きましたが、逆に光軸以外は、「普通」のバイクであれば問題ないということです。

門真車検テストセンターでやられたこと


とりあえず、このテストセンターにバイクを走らせました。
すると・・・

手招きされ、ここに止めろと言われ(この間何の説明もなし)

「ハイビームにして」

と言われます。
素直にハイビームにします。

なんかセンサーみたいなのがバイクの前に出てきて、よく分からん画面が出ます。
結構歪んでました。
うわー・・・と思っていると、あれよあれよという間にエンジニアの方に光軸を調整してもらえます
めちゃくちゃ早かったです。

ハイビームにしっぱなしだったので、疑問に思います。

私「ローは?」

エンジニアさん「車検はローは見ないのでいいです」

私「あ・・・はい・・・」

で、、、1,500円請求されます。

寝屋川テストセンター領収書

素直に払います。

「光軸はすぐに歪むので、ゆっくり走ってくださいね」

私「はい・・・」

で。終わり!!!

何の説明もされてないよ!!!!!!!!

車検テストセンターはこのような感じで終わりました。
うーん・・・

そのまま車検場へ


モヤモヤしたまま車検場に赴きます。本当に大丈夫なのかな・・・
車検場ではかなり迷ったし、戸惑いました。

まず建物が3つあって、どこに行っていいのか分からない(よくよく見るとルートが書いてるんですが)

正しい順番はこちら!

車検場ルート
まずは①にバイクを止めます。

②のC棟?で「ユーザー車検に来ました」と言います。

すると、申請に必要な書類一式を貰えます。

これが冒頭にある

5.自賠責保険証(現在加入中のやつ。または次回車検までをカバーする期間のものを車検場で更新)
6.自動車重量税納付書(車検場で入手できる)
7.自動車検査票(車検場で入手できる)
8.継続検査申請書(車検場で入手できる)

になります。
5は、更新が切れそうな場合、窓口の横にある保険屋さんで即座に更新手続きができます。
(不安なまま赴いても、ルートとか次に何をしたらいいかを丁寧に教えてもらえます。)

んで、諸々の記載方法は車検場にサンプルがあるのでそのまま記載。
ここで、インターネットで予約した予約番号も合わせて書くのです。

どのネット情報を見ても、「3号なんちゃら。。。」みたいな細かな記載方法しか乗ってませんでした。
よく分からんかった。

心配いりません。現場にサンプルがありますし、
ここでもらえる一式書類は、車用と違い、バイク用の簡易版なのでとてもシンプルでした。

申請の時間


②で、必要な書類とか重量税とか、諸々支払います。
支払いが終わって必要な書類を書いたら、③(B棟だったかな。。。)に行きます。
ユーザー車検と、業者用で窓口が分かれてます。一目見れば看板にユーザー車検の方!的な看板も出てるのですぐにわかります。
親切です。

私は14時からの予約をしてたんですが、なぜか13時から受付が始まってて、ワタワタしてしまいました。
落ち着いて書類を揃えて、窓口の人に持っていきましょう。
書類がNGの場合、書き直してと言われます。

この③の場所で必要な書類を全部見られます。もちろんメンテナンスノートもです。

書類が通ったら


不安な気持ちはあると思います。
でも書類さえ揃えっていれば、窓口の方の指示に従えばなんとかなります。
みなさんも「住民票」を取る時とか事前に全部調べていかないですよね。
とりらえず行ってみて、お役所の求める通りに請求しますよね。それと同じです!同じでいけます!

書類が通ればとうとう車検の実施です。
地図上の④にバイクを走らせます。バイクの場合は、10番ゲートに行きます。

ここで戸惑ったのは、「検査員に書類一式を渡してください」って言われるんですね。

バイク乗りの方は分かるかもしれませんが、バイクに乗りながら、
別の荷物をあれやこれやるすのは非常に苦手なんですよ。
ここが一番苦労しました。
ユーザー車検に行く方は、書類を取り出しやすいカバンで行くのがいいと思います。
ヘルメットも邪魔なので、鬱陶しいなら④の出口付近にメットを置いておくというのもありかと思います。

(業者の方々も多くいらっしゃって、彼らは殆どノーヘルでした(公道ではない敷地内なので問題ない))

車検の方法


③の窓口で初心者アピールをすれば、このような冊子が貰えます。

車検場冊子

車検場冊子

正直、バカなせいか見てもよくわからないのと、一回目では何が何だか分からない情報も書いてあって、意味はありませんでした。
百聞は一見にしかず!他の人がやってるのを見る方が早かったです。

ただ一点だけ言っておくと、
写真の「★」の部分ですね。
バイクを乗り上げてから、ここをずーーーーーーーっと踏みっぱなしにしないと駄目です。
左足でこのレバーを踏んだまま、「リアブレーキを踏んでください」とか言われます。
フラフラします。
立ち転けしそうになるというネット情報は間違ってませんでした。

とりあえず、緊張しつつ指示に従いながら進めていると、あっという間にバイクのチェックは終わります。

問題なくチェックが終わったら「合格」のハンコを貰えます。
ここまで終わったら、車検は通ったということです。

再び③のB棟へ


合格のハンコを持って再びB棟へ。
特に何も考えずに、書類を窓口の方へ渡します。
すると、車検が通ったことを証明するシールがもらえるので、ナンバープレートへ貼り付けて終わりです。

大阪のおっちゃんに教えてもらったこと


話は変わりますが、書類を書いている時、自分の住所とか、名前とかの書類を広げます。
現場で仲良くなった車検熟練者のおっちゃんに教えてもらったことは・・・

「兄ちゃん。そんなに住所とかの情報が書かれた書類をを広げたらあかん」

とのこと。

理由を聞くと、住所情報を見て、バイクを盗みにくる人がいるんだってさ。

確かに、こいつはバイクや車を持ってるって証拠を堂々と宣言しているようなもんですからね。

さすが大阪。危ないですねぇ・・・皆さんも気をつけましょうね。

結局いくらかかったの?


今回の作業でいくらかかったのかを提示しておきます。
まずは車検テストセンター払った1,500円

寝屋川テストセンター領収書

次に重量税(3,800円)と自動車件登録印紙(1700円) 合わせて5,500円

重量税(3,800円)と自動車件登録印紙(1700円)

最後に、自賠責保険2年分で1,1520円

自賠責保険2年分

合計18,520でした。

当初の6万円と比べるとかなりリーズナブルな金額ですね。

最後に


今回、初のユーザー車検ということで
インターネットで調べて事前準備し、自信満々で行きたかったのですが
残念ながら詳細までイメージすることができないまま車検日になってしまいました。

でも行って分かりました。

「バイクが問題ない状態であれば、なんとかなる。」

言えるのはこれです。
安心してトライしてください。

もしカスタムバイクで自信がないのであれば、バイク屋さんに全てを依頼するのではなく、
車検点検だけを依頼した後に、自身で車検に行っても良いと思います。
それだけで代行手数料は節約できます。

ただし、本エントリは車検を通す事に主眼を置いているので、
愛車のバイクのメンテナンスは自信の力量を加味して、適切なメンテナンスは普段から行っていただきたい。
車検のためにケチって、事故を起こして取り返しのつかない事にならないように、気をつけてくだいね。

そういった意味では、あくまで車検は「最低限のことを確認しているのだ」ということをお忘れなく!

それではユーザー車検を受ける皆様、いいバイクライフを!

テーマ:整備 - ジャンル:車・バイク

Python ファイルの読み書きを行う

WindowsでPython シリーズ その26


今回はサラッとファイルの読み書きの基礎をまとめます。

ファイルの読み書きの手順


どのプログラム言語であれ、ファイルの読み書きの基礎は決まっています。

  1. ファイルを開く
  2. ファイルを読み書きする
  3. ファイルを閉じる

です。

これをPythonの命令後に置き換えると・・・

  1. ファイルを開く → open()
  2. ファイルを読み書きする → read() / write()
  3. ファイルを閉じる → close()

となります。
自分でマウスで開いてファイルの中身を見る時も同じですね。

手順通りにPythonコードを書く


とりあえず、Pythonコード(main.py)と読むためのテキストファイル(sample.txt)を用意しました。
Python ファイルの読み書きを行う


sample.txt の中身はこんな感じです。
「月が綺麗ですね。」
「は?」
「・・・・・」
ファイルはメモ帳で作ったので、S-JISのエンコードです。

作ったテキストファイルの中身を読んで、文末に追記したいと思います。
例によらず、マニュアルに沿って構文を確認
ファイルを開く方法はopen 関数を使うとあり、その引数を確認。
'r+' はファイルを読み書き両用に開きます。
とのことなので、このようなコードを書く。



実行結果
Python ファイルの読み書きを行う

sample.txt の中身もきちんと書き換わってますね。
Python ファイルの読み書きを行う

簡単に解説


とてもシンプルなので解説は不要かもしれませんが念のため
open()関数

open()関数にファイル名、オープンモード、文字のエンコードを指定しています。
今回は"s-jis"エンコードのファイルを開くので"sjis"を指定、そして、読み書きをしたいので引数を名前指定でmode="r+"としています。
この指定により、読み書きを行うモードでファイルを開くことになります。

read()とかwrite()とか

read で中身を読み込み、writeで末尾に指定した文字列を書いています。
ここで、"\n"としているのはなぜか・・・windowsユーザーなら"\r\n"としたいところですが、
こうすると、改行が余計に入って表示されました・・理由は謎です。いつか解明したい(誰かコメント下さい!

seek()関数

seek は、ファイルを読み込んだ場所を表します。
一旦readでファイルの最後まで読んで、文字を追記したので、読んだ場所はファイルの最後の位置にいます。
マウスカーソルで例えると、ファイルの最後にカーソルがある状態です。
readは、カーソルの位置から後ろを読み込むので、readした後にさらにreadしてもファイルの内容を読み込むことができません。
(ファイルを読むためのマウスカーソルが一番末尾にあるので、それ以降を読んでも意味がないと思ってください。)
よって、seek(0)の命令で、カーソル位置を一番最初に戻しています。

ファイルは閉じよう


最後に f.close() としているのは、きちんとファイルを閉じるという操作が必要だからです。
これを忘れると、ファイルが開きっぱなしになりますので注意してください。

今日はファイル操作の基礎中の基礎をやりましたが、プログラマとしては不十分です。
次回はきっちりとファイルを操作するお作法を勉強したいと思います。

テーマ:プログラミング - ジャンル:コンピュータ

Python PyPiでパッケージを探してインストールする

WindowsでPython シリーズ その25


とうとうここまできました。Pythonでのパッケージ利用。
Pythonの魅力の一つ、様々なパッケージが有志の方々によって多く公開されていることですね。
(他の言語にも、もちろんありますよ)

パッケージとは


Pythonでいうパッケージとは、複数のモジュールの「かたまり」のことです。
例えば「暗号化ファイルを作りたい」とか「色んな種類の圧縮ファイル作りたい」とか。
汎用的なやりたい事の殆どは、自分で組まずにパッケージを探して作るというスタイルでコーディングすることで解決できます。

Pythonのパッケージ一覧サイト


どんなパッケージがあるか?
ここ(https://pypi.python.org/pypi)で探します。
正直、パッケージを探し当ててもインストールするための構文が分からないとイライラするので、英文を読みふける必要がありそうです。
とか言ってても始まらないので、日本語のコチラの本を買い、進めていくことにしました。
内容的には、初心者が読むには十分な感じです。



パッケージ管理ツールPIP


Python3(2にもあるよ)には、PIPというパッケージ管理ツールが標準でインストールされています。
このPIPというツールを使って、パッケージをインストールしたりアンインストールしたりします。
パッケージをインストールすると、import 文を使ってそのパッケージを呼び出すことができるのですが、
バージョンによって書き方が異なるようです。

とりあえず、このブログを書く時にPythonをインストールしたのですが、PIPのバージョンが古いかもしれないので
バージョンアップコマンドを実行します。

コマンドは以下の通り
python -m pip install -U pip

Python PyPiでパッケージを探して利用する

うん。。。どうやら最新ぽいのかな?

QRコードを作るパッケージをインストールしてみる


QRコードを作成するパッケージを入れてみる。
これは、先程紹介した本に記載されているパッケージです。
QRコード作成のために、画像処理ライブラリである pillow というのもインストールする必要があるので合わせてインストールしてみます。
が、、、Windows環境では本の通り記載してもNGでした。

どうもpip に対して、構文が間違っている的なエラーがでましたので、Windowsで通用する書き方でやってみます。

PIPに対してインストール要求


流したコマンドがコチラ
python -m pip install pillow crcode


結果がこちら
Python PyPiでパッケージを探して利用する

どうやら、pillow のインストールはうまくいったけど、qrcodeの方はバージョンがどうとか言われました。
qrcode 5.3
パッケージを探してみたら、5.3 が最新らしい。
pipに対してどうやって指定したらいいかわからんので、次のコマンドを流してみます。
python -m pip install "qrcode 5.3" crcode


ものすごい怒られた
Python PyPiでパッケージを探して利用する

よく分からんので、単品でインストール要求をしてみた。
python -m pip install "qrcode"


いけ・・・たのか??
Python PyPiでパッケージを探して利用する

パッケージがインストールされるフォルダの前後を比較してみた。
パッケージがインストールされる場所、デフォルトでいじってなければここにあるそうです。
C:\Users\(ユーザー名)\AppData\Local\Programs\Python\Python36-32\Lib\site-packages

で、コマンド実行前と後で比較してみます。

インストール前
Python PyPiでパッケージを探して利用する

インストール後
Python PyPiでパッケージを探して利用する

うん、、、なんとなくいけてるぽい。。。
この当たりは申し訳ないですが、後々詳しく調べて記事にしたいと思います。

今日はパッケージをインストールして利用するのがゴール!

QRコードを作るパッケージの呼び出し


さて、pipによってパッケージがインストールされているならば、
いつものようにimport して qr作成コマンドを呼び出せば
パッケージに入っているqrコード作成モジュールが動くはず!

このブログのURLをQR作成コードにするプログラムコード


これで動くはずなんだが・・・

結果的には。。。エラーの画像を取得し忘れましたが、めっさエラーが出ました。

すぐ消したので忘れて申し訳ないですが
Image というオブジェクトが無いとか・・・

これはきっと pillow のインストールが正しくできてないんだと予想。
で、もう一度pillowのインストールを実行
python -m pip install pillow


さっきと結果が違う。。。もうわかんね。後で調査することが増えていやだなぁ。。
Python PyPiでパッケージを探して利用する

なんか、新しくなったぽい?
もう一度QR作成コードを呼び出してみる。

エラーは出てないし、ファイルも作られている!!!!!!
Python PyPiでパッケージを探して利用する
Python PyPiでパッケージを探して利用する

QRコードもできてる~!
Python PyPiでパッケージを探して利用する

はい、、、というわけで這々の体で本に書かれてることが実行できました。

反省点


・記事や本を読んでも、あくまでも「その時点」の情報であり、情報は刻一刻と新しくなっている
・「一気にまとめてやる」系の事は、実際に自分でやる場合はばらして実行する方が良い
・本の通りいかなくても焦らずに、一つ一つ振り返ってみる
・英語は頑張って読む

こんな感じでしょうか。
それにしてもパッケージインストールにここまで手こずるとは・・・

テーマ:プログラミング - ジャンル:コンピュータ

Pythonで日付型を扱う

WindowsでPython シリーズ その24


Pythonの日付型、datetime型はモジュールとして定義されています。
利用する時は、import datetime を指定します。

日付型の利用宣言


日付型のマニュアルに沿って、早速コードを書いてみます。


実行結果
Pythonで日付型を扱う

d.datetime.now()
2017-07-07 01:28:26.004739
となります。

日本人としてはあまり馴染みのある表示ではないので、これを書式指定して表示します。

t.strftime("%Y年%m月%d日(%a) %H時%M分%S秒")
2017年07月07日(Fri) 01時32分29秒
となります。

書式指定の方法は 8.1.8. strftime() と strptime() の振る舞い を参考にしています。

strftimeは、文字列のformatのようなもので、書式を %● とすることでお目当ての値を文字列として表示できます。

%●に何が利用できるかの詳細はマニュアルに全て記載されていますが、よく利用する書式指定については
最低でも次のものを覚えておけばよいでしょう。

書式意味
%Y西暦(4桁)
%m月(2桁)
%d日にち(2桁)
%H24時間表記で時(2桁)
%M分(2桁)
%S秒(2桁)
%w曜日を表す数字(0:日曜日、1:月曜日…)
%a曜日名の短縮形
%%文字列の'%'を表示する


%mだけは中尉ですね。 %mで月、%Mで分になります。
前のページ 次のページ

FC2Ad