仮想空間VR:Unity2018 C# arrayの書き方

こんにちは、(; ・д・´) かず まなぶ です。

array(配列) をやっていきましょう。

  • arrayは   {    ,      ,      ,     } で表現できる。
  • 1.0fを頭に掛け算すると少数を表現できる。

次回は、メソドとクラス やっていきましょう。

とにかく、一気にC#の基本は終わらせたいので 突っ走りますよ(; ・д・´)

仮想空間VR:Unity2018 C# if構文とfor構文

こんにちは かず まなぶ です。

今日は、if と for やりましたので、貼っておきます。

はまりどころ

  1. C#のファイル名を変更したら、クラス名をそのファイル名と同じ名称に変更しなければ動かない。 例)ファイル名をTest.csにしたら、public class Test : MonoBehaviourにしなければならない。
  2. ifとかforの後ろはセミコロンをつけない。
  3. ifとかforでネストする内容は、{ }でくくらなければならない。
  4. elifは存在しなくて else if と書くこと。
  5. elseは、そのほか、以下も実行します。という意味であり、ifでも else ifでもなかったらそのほかの処理として実行します、ではないので注意!

今回も最後までご覧いただきましてまことにありがとうございました。

次回は配列をやって行きます。

仮想空間VR:はじめてのUnity2018 C# Debug.Log()

こんにちは、かず まなぶ です。

本日、はじめてUnity2018 C# を触りましたので、使い方をメモっていきます。

オブジェクトにカラのC#ファイルをアタッチしまして、コンソールへの出力を試しました。

数値と文字列を定義する書式、そして演算についてまとめておきます。

はじめてC#のコードを書きましたが、pythonに負けず劣らずとても見やすいです。

それもそのはず、C#は C言語を進化させた C++ を さらに進化させた C++++というコンセプトだそうです。++++を合体させて#にしたっぽいです。

なので、本当は シーシャープ でなくて

シープラプラプラプラ!!

オラオラオラァ!!(; ・`д・´) ザッ ワールド!!

本日も見ていただきまして、ありがとうございました。

次回は、if-else と for構文をやっていきましょう。

仮想空間VR:やっていきます宣言(=゚ω゚)ノ

こんにちは、かずまなぶ です。

本日も

コワーキングスペース秋葉原Weeyble

さんにお邪魔しています。

Unity2018でVRを作っていきます。

さあ、本日中にどこまでできるか!

インストールしましょう

いずれもライセンスうんたら聞いてきますが、「合意する」にチェックをいれればOKです。

  1. Unity 2018 personal バージョン 無料
  2. Java SE開発キット10 (jdk-10.0.2_windows-x64_bin.exe)←これではだめだった。
  3. Java SE開発キット8u181(jdk-8u181-windows-x64.exe)←こっちです。Unity2018はJDK8対応だそうです
  4. Android Studio (3.1.4 for Windows 64-bit (790 MB)←chromの翻訳機能がONになっているとダウンロードボタンが反応しませんので、オフにしてください。

デバイス

Lenovo スタンドアローンVRヘッドセット Mirage Solo with Daydream

参考文献

楽しい!Unityシェーダー お絵描き入門!←シェーダー言語ってやつです。

圧倒的python:moduleを自作しよう!!

こんにちは かず まなぶです。

今日は、

コワーキングスペース秋葉原Weeyble

さんにお邪魔して、もくもく会の仲間たちと揉まれながら(酒を飲みながら)モジュールの作り方を学んでいきます。※本当はword pressをやりたかった・・・

モジュールを作ったら、pathの通っているディレクトリに なんちゃら.py で保存しましょう。

私はjupyter notebokを使っているので、そこのディレクトリにいれました。

では、自作モジュールを使ってみましょう。

やりました! 

自作モジュールで定義したvalue1 も呼び出せているし 関数function1もちゃんと機能しています。

class1もmethod1も機能しています!

あとはアイデア次第で無限の可能性があります。

お疲れさまでした。目標達成です。

今日は帰って寝ます。最後まで見ていただきましてありがとうございました。

(=゚ω゚)ノ かずまなぶ。

圧倒的python:関数 そして クラスとメソドの作成方法

こんにちは (‘ω’) かず まなぶ です。

今日も Python やっていきましょう。 実務でコードを書いているとモジュールの作り方を忘れがちなので、備忘録としてまとめておきたいと思います。

が!その前にモジュール以前であるクラスとメソッドの作り方、そしてさらに戻って、関数の作り方まで Python 始めたばっかりの方の為に残しておこうと思います。

  1.  関数の作り方
  2. クラスとメソッドの作り方
  3. モジュールの作り方

例題として二つの数の平均を求めるプログラムを考えてみます。

ベタ打ち:関数もなにも使わない場合

まず関数を使わない場合のシンプルなコードを書いてみます。

5回繰り返してみましょう。

1行だけ作って、それをコピーして中の数値を書き換えただけです。シンプルですね。

関数を使った場合

こちらも5回やってみました。

function 1という関数を定義して引数arg1,arg2を指定することによって毎回同じ 行の answer = ( arg1 + arg2 ) / 2 という計算を繰り返しています。

5回繰り返す程度では逆にコード自体は長くなっています。

しかし、

実用面では関数を何千回、何万回繰り返す

場合や

演算式がとても複雑になりがち

なので、 関数としてまとめておくと、圧倒的に全体の行数は減りますし、修正の手間は格段に少なくなります。

相当昔からあるプログラミングの表現方法なのでしっかり使えるようになりましょう。

実際仕事で何かしら、計算しようと思ったらこの

関数だけあれば、なんとかなります。

クラスとメソドを作ってみる

もっとこのプログラムに拡張性を持たせたり流用したりソフトウェアっぽくしてみたり、そういった場合に次のクラスとメソッドを使ってみましょう。

メソドといえども、最初は関数として作ってみて、動きを確認しましょう。

次にクラスとメソドの基本形(ひな形)を確認しましょう。

では、関数をメソドに書き換えていきましょう。

と、こうなります。

実際、仕事でやる技術計算でも、使ったことはありません。結果が解ればいいので、ベタ打ちで数式を書いていって、まとめたほうがすっきりするところは、関数にまとめなおす感じです。

次回予告

本日も、最後まで見てくださいまして、まことにありがとうございました。次回は、モジュールの作り方をやっていきましょう。(‘ω’)かず まなぶ

圧倒的に自動化:pyautogui でマウスとキーボードを自動化 on python

こんにちは、(‘ω’) かず まなぶ です

今日も圧倒的仕事の自動化について使えるモジュールを紹介したいと思います。

その名も、パイオート グイ ( pyautogui ) .

ネーミングが長いんで私は省略して ピーエー( PA ) と呼んでいます。

マウスの動きだとかキーボードのタイピングの動きを丸ごと Pythonからコードによって自動 操作してしまうという、

” 原始的で画期的 “

なモジュールです。

ディスプレイ操作

#

マウス自動操作

#

キーボード自動

#

前回ご紹介いたしました selenium と組み合わせると、自動化の実現可能性が飛躍的に高まります。

本日も最後まで見ていただきまして誠にありがとうございました。(‘ω’) かず まなぶ

圧倒的に自動化:Seleniumを使う。webブラウザ on python

今日は ”(‘ω’) かず まなぶ” です。

最近 Web ブラウザを使ったソフトウェアってすごく多くないですか?

毎日の仕事の中で

同じような繰り返し作業

があったらそれ、

自動化してみたい

と思いませんか。

私は selenium を使っています。

今日は selenium のさわりだけですが、皆さんに紹介したいと思います。

検索エンジンに調べたいワードをに入力して検索するというところまで自動化してみました。

このように、アイディア次第では色んなことができます。

今回は Google Chromeで行ったので簡単でしたが、これを Internet Explorer 11でやろうとすると結構大変でした。

レジストリの追加をするという作業があります。

これを会社でやろうとすると十中八九、情報システム部にお叱りを受けます。気をつけましょう。

Internet Explorer 11の場合

1. 公式サイトより IEDriverServer_Win32_3.9.0.zip をダウンロードし解凍。webdriver パス指定の場所に移動。
2. IEの詳細設定の拡張保護モードを有効にする。
3. IEのセキュリティを中、保護モードをオン。(制限付きサイトだけは高。なぜか変更できない)
4. 64ビット版の指示の通り regedit でレジストリを編集
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BFCACHEを新規に作成。iexplore.exeを新規作成し DWORDを16進数で0に設定した。
5.ブラウザの拡大を100%に設定
6.PCを再起動

しかし、疑問点がいくつか。

(1)なぜ64bitなのにwin32のドライバーで動くのか?x64では動かない。
(2)公式サイトによると拡張保護モードは無効にすると書いてある(逆)。

本日も最後まで見ていただきまして、ありがとうございました。(‘ω’) かず まなぶ

圧倒的使い分け:pythonのlist , array , numpy.array , pandas.Seriese , pandas.DataFrame

今日はかずまなぶです。

Python でデータを処理するときにベクトルだったり行列だったり使うわけですが、じゃあどれを使ったらいいのかって迷ったことありませんか?私はいつも迷ってます。

そんな毎日に終止符を打つべく今回はしっかりと、まとめていきたいと思います。

私たちの選択肢は,

  1. list                             (Python標準の組み込み型 インポート不要)
  2. array.array              (Pythonの標準モジュール)
  3. numpy.array           (数値計算ライブラリ NumPy。行列演算)
  4. pandas.Series          (データベース分析ライブラリPandas。ベクトル)
  5. pandas.DataFrame(データベース分析ライブラリPandas。行列)

list

まずは、listを確認しましょう。

カンタンにデータの入れ物をつくるならlistは便利ですね。最も輝かしい使い方は、

for構文のインデックス番号として

使われることだと思います。

こんな応用もあります。よく使います。(zip , enumrate)

array.array

では次の、arrayモジュールの array.arrayを確認しましょう。

結論として、これは使う必要はありませんね。忘れましょう。

numpy.array

ここからが本番、numpy.array です。

行列演算をするなら

これで決まり。

pandas.DataFrame

いよいよpandasです。pandas.Seriesはぶっちゃけ要らないです。なので飛ばして、pandas.DataFrameを確認しましょう。データの取り込み、表計算やSQLのような使い勝手です。時系列処理、文字列と数値が混ざっているデータでも処理できます。データの欠損があっても取り込めますし、除去することもできます。

まさに、データベース分析ライブラリ。

pandas.DataFrameはデータの取り込みと成形は得意ですが、演算はそれほどではなさそうです。演算はnumpy.narrayに任せましょう。

まとめ

  • それぞれの得意分野を明らかにしました。
  • array.array と pandas.Series の存在は忘れましょう。
  • データの操作は、以下のような順番が良いと考えます。
  1. pandas.read_csv(“ファイル名.csv”,index_col=0) でデータフレームとして取り込む。
  2. pandasでデータフレームを成形する。
  3. データフレームからnumpy.arrayに変換して、演算する。
  4. 結果を再びpandasのデータフレームに変換する。

本日も最後まで見ていただきまして誠にありがとうございます。

(‘ω’)かず まなぶ

次回からは、取り込んだデータを整形するというテーマでpandas.DataFrameを深掘りしていきましょう。

圧倒的:Python 初心者向けのハンズオンやります。

急遽開催いたします。川崎近辺でpythonの勉強会がないんですよね、と相談したら、やってくれる講師の方を見つけました。とりあえず場所は確保しますので、参加したい方はご連絡ください。 正確な場所が決まり次第、個別にご連絡します。

場所日時

  • 場所 :川崎駅 徒歩5分くらい。
  • 開催日:最初の参加表明から1週間前後が目安。希望日と会議室の空き状況で調整します。
  • 時間 :平日18:00~20:00 土日15:00~17:00の2時間

募集人数

  • 最大参加人数13名 ちょっと狭い。
  • 最大5名にします。 少数精鋭で効率よくやりましょう。
  • 1名なら最高に効率がいいです。1名の日はラッキーです。

参加費用

  • 受講料:2980円 税別→書籍執筆キャンペーン中のため0円
  • 場所代:1000円 (当日現金)

得られるもの

  • Anaconda のインストール方法
  • Anaconda の使い方 (Jupyter Notebook)
  • Python の基礎(データ型、繰り返し構文 ハンズオン)
  • 仕事の自動化にすぐに使えるPython モジュール群(動かしてみましょう)
  • 自分で学べる推薦図書
  • 圧倒的pythonもくもく会参加権(圧倒的pythonもくもく会に参加できます。また受講料が1回分無料になります。)

参加対象者

python初心者です、初級以上は含まれませんのでご注意ください。初級以上、機械学習などに特化した講義は別途開催します。ITエンジニアの方も非対象です。

もち物など

  • ノートPC windows10
  • anacond インストール済みが望ましいですが、入っていない方は、セミナー冒頭にハンズオンします。
  • 筆記用具:ボールペン、シャープペン、消しゴム、メモ帳
  • 名刺  :お持ちの方はセキュリティ上、2枚お見せください。1枚だけ頂戴します。
  • 服装  :自由です。Tシャツ、ジーパンでOKです。

講師:中森 啓太氏(メカニカルエンジニア)

IT関係のエンジニアではありません。日常の仕事、一般事務でも使えるような実用的なプログラミングをQuick and Dirty  に教えてくれます。