ラベル 08. Python の投稿を表示しています。 すべての投稿を表示
ラベル 08. Python の投稿を表示しています。 すべての投稿を表示

2020年2月1日土曜日

Pythonで実行ファイル(EXEファイル)を作る方法

Pythonは基本インタープリタ言語で、Pythonファイルを順次的に読みながら実行していくことも多いですね。

しかし、配布などのためには、やはり実行ファイル(exeファイル)の形で変換する必要もよく感じます。

Pythonの実行ファイルを作ってくれるのは
cx_Freeze、py2exe、PyInstallerなどがありました。

この中で私は一旦評価が良いPyInstaller使ってみることにしました。

・・・

使ってみると簡単にexeファイルが作られたし、日本語の使い方をわかりやすく整理しておいたページも結構あろうかと思います。

私は次のハングルサイトを参考しました。
https://wikidocs.net/21952

2019年9月28日土曜日

Pythonクラスに関するいくつかの整理

■ PythonはOOPを支援するが、完成度は高くない(下段の参考図書「Python征服」著者の意見)


■ クラス名の最初の文字は大文字を使うことが慣行である


■ コンストラクタ
__init__


■ デストラクタ
__del__

Pythonはメモリ管理の自動化を支援する⇒従って、デストラクタを多くは使わない


■ クラスの継承
class クラス名(親クラスの名前):

子クラスで親のメソッドを呼び出すときには、super()メソッドで親を求めて呼び出す

多重継承は支援するが、なるべく使用しないことが望ましい


■ 情報隠蔽
Pythonは公式的に情報隠蔽を支援していない

(1) ただし、メンバーの名前を__(「_」2個)で始めれば実際の名前を
「_クラス名__メンバー名」に変換
eg) __second ⇒ _Time__second
これをprivateのように使用

(2) また、protectedのように使用するため(または 表現するため)、
_(「_」1個)を使用すると言う

(1)・(2)いずれの場合もクラスの外部から直接アクセスすることができた
ただし、(1)の場合、Visual Studio Codeとしてコーディングするとき、
ある程度隠されたことは感じられた(下の図を参照)

情報隠蔽の利点の一つがプログラミングの利便性であることを考えると、
ある程度意味があると思う

公式的には情報隠蔽を支援しないとしても、
メンバーを外部から直接に・自由に操作させることより、
ゲッター(Getter)とセッター(Setter)メソッドを定義することが一般的


■ 簡単な例(自作):
* Pythonのクラスの特徴を簡単に活用してみることを目的として作成したので、
実戦プログラミングとは差があり得る


class Polygon:
    _center_x = 1
    _center_y = 2
    def __init__(self, center_x_entered, center_y_entered):
        self._center_x = center_x_entered
        self._center_y = center_y_entered
    def area(self):
        print("Unable to calculate area: unknown polygon type")
class Rectangle(Polygon):
    __width = 0
    __height = 0
    def __init__(self, witdth_entered, height_entered):
        self.__width = witdth_entered
        self.__height = height_entered
    def area(self):
        print("The center of the rectangle is: (" +  str(super()._center_x) + ", " + str(super()._center_y) + ")")
        print("The area of the rectangle is: " + str(self.__width * self.__height))
class Triangle(Polygon):
    __width = 0
    __height = 0
    def __init__(self, witdth_entered, height_entered):
        self.__width = witdth_entered
        self.__height = height_entered
    def area(self):        
        print("The center of the triangle is: (" +  str(super()._center_x) + ", " + str(super()._center_y) + ")")
        print("The area of the triangle is: " + str(0.5 * self.__width * self.__height))
poly1 = Polygon(35)
rect1 = Rectangle(57)
tri1 = Triangle(34)
print()
rect1.area()
tri1.area()
print()
print("The x-coordinate of the center of the polygon (directly): " + str(poly1._center_x))
print("The x-coordinate of the center of the triangle (directly): " + str(tri1._center_x))  #like protected
print("The height of the rectangle (directly): " + str(rect1._Rectangle__height))   #like private
cs


実行結果:

The center of the rectangle is: (1, 2)
The area of the rectangle is: 35
The center of the triangle is: (1, 2)
The area of the triangle is: 6.0

The x-coordinate of the center of the polygon (directly): 3
The x-coordinate of the center of the triangle (directly): 1
The height of the rectangle (directly): 7


参考:









______________________________________
参考書籍(韓国の本):

파이썬 정복(Python征服)
초판발행(初版発行):2018年04月02日
지은이(著者):김상형
펴낸곳(出版社):한빛미디어(주)

参考サイト(韓国語のサイト):

https://brownbears.tistory.com/112
https://lambda2.tistory.com/3

2019年8月31日土曜日

EclipseでPythonの開発環境を作り、Hello worldまでしてみましょう

_________________________________________________
Pythonの開発環境の設定

1. Eclipse実行

2. 最初の画面のWorkbenchクリック

3. 開発メイン画面で、Help> Install New software...

4. Add
- 上段のAdd...ボタンをクリック
- Name(にPydev)入力
- Loacationに http://pydev.org/updates入力
- Addをクリック

5. PyDevチェック、Nextをクリックしてインストールの進行
インストールが完了した後、Eclipseの再起動

(6. )開発のメイン画面で、Open Perspectiveボタン(表の上で+模様)を押してみる
Eclipse Jee(2019-06)基準、右上にあります。
正しくインストールされている場合、「PyDev」の項目があります。

7. 環境設定
- Window> Preferences
- 左側リスト> PyDev> Python Interpreter
- Config first in PATH
- インタプリタが追加されると、Appy and Closeボタンを押して出てくる

_________________________________________________
プロジェクトの作成

1. New Projectで「PyDev Project」

2. .pyファイルの作成
- 作成したプロジェクトフォルダで右クリック> PyDev Module
- Nameを入力し、Finish
- print("Hello world")を入力

3.矢印ボタンをクリックして実行

_________________________________________________
参考サイト(韓国語)

https://mainia.tistory.com/4517

Visual Studio CodeにPythonの開発環境を作り、Hello worldまでしてみましょう

この度のIDEはEclipseにしようかとは思いますが、その前、簡単にVisual Studio Codeを使ってPython開発環境を作り、Hello worldをプリントする方法を紹介します。

_____________________________________________
設置

1. Visual Studio Code設置
https://code.visualstudio.com/
検索サイトでVisual Studio Codeを検索したらすぐ探せると思います。
そこですぐにダウンロードすることができます。
設置過程も簡単で、時間も長くかかりません。

2. Pythonダウンロード
https://www.python.org/downloads/
Pythonダウンロードサイトでダウンロードします。
これも設置過程が簡単です。
*チェックして良いこと
インストールの初画面で「Add Python ~~ to PATH」をチェックして置くともっと便利です。

(3. )cmdで「pyhton」をタイプして、設置したバージョンが出るかを確認

4. Visual Studio Codeで
ctrl + shift + pを押すと、command paletteが出ます。
そこでInstall Extensionsを検索して実行、
目録でPythonを選択して設置します。

5. Color Themeの変更
defaultは暗いテーマですが、明るいテーマが好みの方は、
File>Preferences>Color Themeで変更して良いです。
(4. の設置中に変えてもいいです)

_____________________________________________
Hello world

1. File> Open Folderでプロジェクトフォルダをロード

2. New File、helloworld.py作成

3. コード入力
print("hello world")

4.エクスプローラでファイルを右クリック> Run Python File in Terminal
またはF5キー(デバッグ)を押してもいいです。

2019年8月29日木曜日

Python IDE

Python IDEとしてよく使われるのは、

Pycharm
Visual Studio Code
Eclipse

などがありました。そして、Anacondaもよく使われるそうです。

PycharmはPythonのIDEとしてほぼ代表的な位置にだったし、
Visual Studio Codeは最近どんどん人気が上がりそうです。
Eclipseはとても有名で広く使われるIDE(特にJava開発)ですね。

私は、すでにPycharmを使ってPythonプログラミングをしたことがあり、
この度はEclipseを使って開発をしようかと思います。