読者です 読者をやめる 読者になる 読者になる

memopy

pythonで作ってみました的なブログ

Python3,Tkinter,sqlite3でGUIアプリ(家計簿ソフト)を作りたい ④GUIの作成(2)FrameとLabelFrameの違い

Python3,Tkinter,sqlite3でGUIアプリ(家計簿ソフト)を作りたい ④GUIの作成(2)FrameとLabelFrameの違い

今回は、FrameとLabelFrameという機能を掘り下げていきたい。
前回の記事では、Buttonのウィジェットをpackメソッドを用いて、画面上に配置したが、packメソッドでは、思った通りの場所にウィジェットを配置できないことが多い。
そのため、Frameというウィジェットを配置する枠を画面上に配置して、その中にウィジェットを入れると簡単にレイアウトできるようになる。

前の記事
Python3,Tkinter,sqlite3でGUIアプリ(家計簿ソフト)を作りたい ④GUIの作成(1) - memopy

続きを読む

Python3,Tkinter,sqlite3でGUIアプリ(家計簿ソフト)を作りたい ④GUIの作成(1)Buttonの配置

Python3,Tkinter,sqlite3でGUIアプリ(家計簿ソフト)を作りたい ④GUIの作成(1)Buttonの配置

前回の投稿からかなり時間が空いてしまったが、今回からGUI部分の作成をしてみたい。
(現在、司法書士の資格取得に向けて勉強中!笑)

前の記事
Python3,Tkinter,sqlite3でGUIアプリ(家計簿ソフト)を作りたい ③データベースの実装 - memopy
次の記事
Python3,Tkinter,sqlite3でGUIアプリ(家計簿ソフト)を作りたい ④GUIの作成(2)FrameとLabelFrameの違い - memopy

続きを読む

Python3,Tkinter,sqlite3でGUIアプリ(家計簿ソフト)を作りたい ③データベースの実装

Python3,Tkinter,sqlite3でGUIアプリ(家計簿ソフト)を作りたい ③データベースの実装

今回は、sqlite3のデータベース部分を実装をする。

前の記事
Python3,Tkinter,sqlite3でGUIアプリ(家計簿ソフト)を作りたい ②設計編 - memopy
次の記事
Python3,Tkinter,sqlite3でGUIアプリ(家計簿ソフト)を作りたい ④GUIの作成(1) - memopy

続きを読む

Python3,Tkinter,sqlite3でGUIアプリ(家計簿ソフト)を作りたい ②設計編

Python3,Tkinter,sqlite3でGUIアプリ(家計簿ソフト)を作りたい。②設計編

今回は非常にざっくりだが、家計簿ソフトの設計をする。
いまいち、Tkinterで何ができるか把握しきれていないので、画面レイアウトは開発段階で柔軟に変更することにする。

前の記事
Python3でGUIアプリ(家計簿ソフト)を作りたい - memopy
次の記事
Python3,Tkinter,sqlite3でGUIアプリ(家計簿ソフト)を作りたい ③データベースの実装 - memopy

続きを読む

Python3,Tkinter,sqlite3でGUIアプリ(家計簿ソフト)を作りたい

Python3,Tkinter,sqlite3でGUIアプリ(家計簿ソフト)を作りたい。

 CUIアプリだったら簡単に作れるけど、やはりユーザーにとって使いやすいのはGUIアプリ。GUIアプリは、Excel VBAのFormでよく作っていたけど、Pythonでは(簡単に)作れるのだろうか・・・?

 ちなみに、開発環境はWindows10で。

要旨(開発方針)

  • 開発環境はWindows10
  • 家計簿ソフトを作る
  • GUIアプリ
  • バージョンは、Python3.6 (32bit)
  • すべて標準モジュールで開発してみる。

今回作りたいアプリ

 まずは、何を作りたいか。目的はGUIアプリを作ってみたい。本末転倒だが、題材はなんでもいいので、とりあえず簡単な家計簿アプリを作ってみることにする。というか、家計簿アプリだったら、Excel VBAのFormで充分な気もするが・・・。一応、クロスプラットフォームに対応させるためということに位置付けよう。

Pythonのバージョン

  Pythonのバージョンで微妙な違いがある。WEBの情報も、Python2系で書かれた情報だと、Python3系で動かないし、時々行き詰る。

 職場のPythonは2系だから、2系に使い慣れているんだけど、今後の大勢はやはり3系なんだろうか。print文に()をつけるのがめんどくさいが、今回は3系(最新は3.6か?)でやってみよう。

 別に、今回作るアプリに、4GBもメモリ食わせないので、32bit版でいいだろうか。

GUIを作る部分

 とりあえず、googleで「Python GUI」で検索してみると、次の3つがメジャーらしい。

  1. Tkinter
  2. PyQt
  3. wxPython

 Tkinterは、Python標準モジュールで、PyQtwxPythonは、サードパーティらしい。インストールとか大変なので、とりあえずTkinterから攻めてみて、限界を感じたら別のものを試してみたい。

データベース

 データベース部分はどうしよう。Excel VBAで作ってしまえば、シートにそのままデータを格納してしまえばいいし、Accessと連接させてもいい。GUI問題も解決。やっぱり、Excel VBAの開発性というか生産性はすごいと思う。WindowsExcelインストールされていないPCなんて今時ないでしょ?MacだってExcel VBA使えるし。

 脱線したが、DB候補は次の3つに。

  1. sqlite3
  2. MySQL
  3. PostgreSQL

 sqlite3は、標準モジュール。MySQLは前に大学の実習で使ったことある程度でPostgreSQLは職場で使っている程度。両方ともオープンソース。やったことないが、Pythonからも動かせる。

 GUIと同様に、とりあえず標準モジュールのsqlite3でやってみよう。

IDE(開発環境)

 開発環境ってなにがいいの?

  1. メモ帳
  2. IDLE
  3. Visual Studio
  4. PyScripter

 「男はだまってメモ帳!」といいたいところだが(笑)。。。なにがいいだろうか。IDLEは標準IDEだが、デバッグが大変。だが、職場ではIDLEしか使っていない。

 ほかには、Visual Studioとか商用大規模じゃなければフリーで使えるし有名だけど、インストールとか大変そう。というか、IDEの使い方を覚えるので体力消耗しそう。

 PyScripterは評判はいいけど、Python3.6に対応していない。調べてみると、2.7と3.4までは対応しているとか。わざわざバージョンダウンするのも面倒なので、標準(IDLE)で攻めます。

まとめ(開発方針)

  • 開発環境はWindows10
  • 家計簿ソフトを作る
  • GUIアプリ
  • バージョンは、Python3.6 (32bit)
  • すべて標準モジュールで開発してみる。

 

次の記事

Python3,Tkinter,sqlite3でGUIアプリ(家計簿ソフト)を作りたい。②設計編 - memopy

 

主にPython周りのメモ

ここ数年プログラミングをやってて、覚えてきたことも増えてきたので備忘録みたいなのを兼ねてメモ

 

ここ数年の流れ

Excel VBA 

 →仕事で使うエクセル周りの自動化

 →仕事でいつも見ているwebのスクレイビング

 →趣味的にFormでGUI作ってみたり

Python

 →仕事で使ってる地理空間ソフト(ArcGIS)のAPIPythonなので、同じく自動化として

これからやりたいこと

・趣味的にPythonGUIやWEBアプリ作りたい

C++でデータ解析(←通信大学の授業で2単位分)

JavaScriptとかやってみたいな