2019年12月27日金曜日

改めてPythonって


こんにちは、ふじかーです。

今更感もありますが、Pythonについて。

わが社の開発メンバー内でも一時期Pythonが流行り
何人か認定試験を受験したりしていましたが

Python3エンジニア認定基礎試験を受けてきた
Python3 エンジニア認定基礎試験、不合格でした

私もVSCodeで動かせる環境は作ったものの、
業務で使用しないとなかなか敢えて使うタイミングも少なく

結局なんだかんだでまだ触ったことのない人も割といるので
改めてどんな言語か整理したいと思います。

がっつり学ぶためには解説書やWeb上の資料が多く存在するので
ここでは取っ掛かりの部分だけとりあえず。



Python チュートリアル


Python3エンジニア認定基礎試験 の試験範囲であるPython チュートリアル。
受験者はだいたいその本を買って勉強したかと思いますが

Pythonの取っ掛かり部分を整理するならチュートリアル前半を見ればよいかなと思い
Web版をサラッと見てみました。

1章がPythonの概要・特徴・魅力など
2章が初期導入について書いてくれていますが・・・

英語資料の機械翻訳版なのか、なんかすごく読みづらい!

Pythonのことをよく知っている人なら
「あーこういうことかな」
と意訳しながら読み進められるんでしょうが

詳しくない人には少ししんどい資料となっています。
(読解力がないだけかも知れませんが)

それでも何とか読み進めてまとめると
要はこんなことを書いている気がしました。


1章:やる気を高めよう


コンピュータを使って作業していると、自動化したい作業が出てきます
  
たとえば  
  ・たくさんのテキストファイルに対し、文字列検索-置換操作
  ・大量の写真ファイルのファイル名を整理
  ・ちょっとしたデータベースや、専用のGUIアプリケーション
  ・簡単なゲームを作りたい
  
それらはソフト開発者なら作れるけど・・・
  ・C/C++/Java ライブラリを扱う必要があったり
  ・実装 → コンパイル → テスト・修正 → 再コンパイルのサイクルが大変だったり
  ・最初の試し書き、簡易動作させるだけでもかなりの時間がかかる
  
Windows バッチファイルとかシェルスクリプトでも・・
  ・テキストファイルに処理を書くだけなので簡単だけど
  ・GUIアプリケーションやゲームには不向き


そんな問題は
Pythonで全て解決  
  
簡単に利用できるのに、本格的なプログラミング言語
  ・C言語 以上に厳しいエラーチェックを実行時に実施
  ・可変長配列や辞書などの高級な型をつかえる超高級言語
  ・Awk や Perl などよりも汎用的なデータ型
  ・プログラムをモジュールに分割して、他の Python プログラムで再利用できる
  ・Windows、Mac OS X、Unix 上で動作
  
膨大な標準モジュールが付属  
  ・ファイル I/O、システムコール、ソケットといった機能や
  ・簡単に画面表示できるGUIモジュール、Tk なども提供
  
Python はインタプリタ言語  
  ・コンパイルやリンクの必要がないので開発時間を節約できる
  ・対話的にも使えるので、ちょっと言語の機能を試したり
  ・書き捨てのプログラムを書いたり、
  ・下位モジュールの関数をテストしたり・・・が簡単にできる
  
コンパクトで読みやすいプログラム  
  ・実行文のグループ化を、グループの開始や終了の括弧ではなくインデントで行う
  ・変数や引数の宣言が不要
  ・高レベルのデータ型によって、複雑な操作を一つの実行文で表現
  
拡張性 がある  
  ・C 言語の組み込み関数やモジュールを簡単に利用できる
  ・ベンダ特有の バイナリ形式ライブラリをPython にリンクしたりできる
  ・逆にPython インタプリタを  C アプリケーションにリンクして、拡張ソフトとして使える

といった特徴から
さて、皆さんはもう Python にワクワクして、もうちょっと詳しく調べてみたくなったはずです。」(原文まま)
だそうです。すごいポジティブ。


2章:Python インタプリタを使う


ここでは、いきなりこんな文章から始まっています。

原文
 Python インタプリタは、それが使えるマシン上では
 通常 /usr/local/bin/python3.8 としてインストールされています; 
 Unix シェルの検索パスに /usr/local/bin を入れることによって、
 次のコマンドをタイプしてインタプリタを開始することができます:
 python3.8

どうやら、もう導入できている人向けの説明のようです。。。

ということでPythonのインストール、触ってみるまでの手順は
 Visual Studio Code で C++ と Python をデバッグする
の記事のほうを見たほうがよさそうです。


また上記の記事は「VSCodeでデバッグするまで」の手順ですが
チュートリアル2章では「コマンドラインでのPython操作」を説明しています。

起動、対話モード
・Pythonのインストールができた環境でコマンドプロンプトを起動
 Wndowsキー+R を押下して「ファイル名を指定して実行」ウィンドウで
  cmd
 と入力


・pyコマンドを打つと、対話モードで立ち上がる

・対話モードとは、コマンドプロンプト上でPythonプログラムを入力・実行するモード。
 ソースファイルを作らずに、プログラムの動作確認ができる。
・対話モードでは >>> を表示して、ユーザにコマンド入力を促す
・if文など、次の行に続く場合は ... を表示
・終了時はCtrl+Z



とまぁ、チュートリアル前半はこんな感じの内容で始まります。

それ以降の章では、
データ型や制御などのプログラミング仕様の説明が続きますが
この対話モードを使った説明が多く出てきます。

また、ここから説明文の和訳がさらに雑になってきます。
突然和訳をあきらめて英語の説明になったり・・・

運営は何故これで良しとしてるのか

ただ、ほかに言語を知っている人であれば
以降はおそらく解釈して進められそうです。

最後まで実際に打ち込みながら読み進められれば
おそらく Python3エンジニア認定基礎試験 は合格できるんじゃないでしょうか。

自分の周りにはPython案件は今のところ無いんですが、今後増えていくかも知れません。
ちょっと何かしたいときに手軽に扱えるサブの言語としていかがでしょうか?

2019年12月22日日曜日

「CYCLOG in 神戸」に初参加!!


こんにちは。よっしーです。

先日、2019/12/08(日)に行われた、

「CYCLOG in 神戸」に参加してきました。


自転車で神戸の街を走り、設定されたチェックポイントを

回って、ポイントを獲得していく、ポイントラリー的な

サイクリングイベントです。


専用のスマホアプリを使って、

チェックポイントで撮影→SNSへ投稿することで、

ポイントGETとなり、現在の獲得ポイントや、

他の参加者の獲得ポイントランキングも

リアルタイムで表示される。というもので、

ゲーム性もあり、とても面白いイベントでした。



※興味ある方は公式ページ(CYCLOG(シクログ) in 神戸)をご覧ください。


今回参加したのは、複数人(2~5人)のグループで一緒に走るクラスで、

会社仲間や協力会社さんの総勢4名で参加しました。


結果としては、17グループ中、「第7位」でしたが、

割と周りは「ガチ」な自転車に乗っている中、カゴ付きの自転車や、

スタンドが付いている自転車で、善戦したのではないでしょうかw


CYCLOG in 神戸は、昨年から始まり、今回第2回目の開催でしたが、

また来年も開催予定とのことなので、次はもっと上位争いが出来るように

頑張ろうと思いました。地元民のプライドにかけて。。。

来年こそは賞品持って帰るぞー!!

ではまた~。

2019年12月15日日曜日

自宅玄関に人感センサーライトを・・・

どうも、もりもりです。

最近、外から帰ってきて家に入るときに
わが子が「おうち暗いからコワイ~」なんつって
なかなか家に入ってくれませんでした。

そこで人感センサーのライトに付け替えようと
いろいろ調べていましたが、今住んでる家の玄関は
LEDの電球を取り付けることができませんでした。

実際に、LEDの商品説明なんかに
「断熱材施工器具SB、SGI、SG形表示器具では使用しないで下さい。」
なんて注意書きがされています。

ウチはSGIとしっかり記載されておりました。。。

そこで見つけたのがコレ!!!

アイリスオーヤマ 乾電池式屋内センサーライト BSL40ML-W

電球色で920円ほど、昼白色で780円ほどとお手頃価格です。

取り付けも簡単で、フック、マグネット、両面テープ、釘、ネジ
と、いろんなパターンに対応しています。

思ってたよりも明るく、勝手についてくれるので
わが子も家に入るたびに楽しんでくれています。

とは言っても単3電池3本なので、これだけでは暗く
今の玄関ライトと置き換えることはできませんが。。。

まぁとりあえずわが子のご機嫌を取ることができて
ニンマリとするもりもりでした。

2019年12月8日日曜日

よく見るWebページをChromeでアプリっぽく開く

こんにちは。やっまむーです。

普段、メモ帳替わりにGoogle Keepを使っています。
PC、スマホ、どのデバイスで書いても自動的に同期してくれるので非常に重宝しています。

ただ、専用ソフト等がなく、開くのに毎回ブラウザを立ち上げる必要があり、これが案外手間です。
アドレスバーやブックマーク等不要なものが表示されてしまうことで、画面がスッキリしない点も気になります。

そんな悩みを解決してくれるのが、Chromeのショートカット機能です。
使い方は簡単。

①メニューの[その他のツール]→[ショートカットを作成]を選択。


②「ウィンドウとして開く」にチェックをつけると、デスクトップにショートカットのアイコンが出来ます。

これを開くとまるで専用アプリのように開けます。

また、複数アカウントを使っている場合は、ショートカットを作成したアカウントでページが開かれるので、アカウント切替操作等は不要です。

皆さんも、よく使うWebサービス等で試してみてはいかがでしょうか。

ではではー。