Python Web アプリケーション: マルチ計算機 – NPV、P&L、CLV

Python、flask、Sqlite3 を使用してマルチ電卓アプリケーションを構築する Python Web アプリケーション開発手順については、詳細をご覧ください。

この Python チュートリアルでは、Python、flask、Sqlite3 を使用してマルチ電卓アプリケーションを構築する Python Web アプリケーション開発手順を説明します。この Python チュートリアルを終えると、基本的に HTML5、JINJA、CSS3、flask、Python、sqlite3 を扱うための基礎的な知識とスキルを身につけることができます。そうすれば、Web アプリケーションの開発は難しくないことがわかるでしょう。

Python Web アプリケーションのワイヤーフレーム: UI & UX のデザインと視覚化

ワイヤーフレームは、Web サイトまたはアプリケーションの骨格を表す単純な線と形状で構成される図または一連の図です。主にユーザー インターフェイス (UI) とコア機能を視覚化し、UX ワイヤーフレームとは何か、どのようなものなのか、顧客にどのようなメリットをもたらすのかについて詳しく説明します。

電卓アプリケーション – ホームページ UI

電卓アプリケーション – UX (マーケティングファネルの設計)

基本的にワイヤーフレームアカウントは無料でサインアップできます。機能は限定されますが、Web 開発の初期段階であれば、試用期間後に UI と UX の概要を説明するだけで十分です。

Python Web アプリケーション – Python と Flask

まず最初に、どのアプリケーションでも、設計と視覚化の前にコア エンジンまたは機能的な心臓を準備する必要があります。それは核となるアルゴリズムとロジックを扱うためです。これらのコア要素がなければ、アプリケーションは魂のない単なるモデルに過ぎません。この記事では、Python と flask を使用して心と魂を構築します。

前回は、SKU 損益、メンバーシップ プラン CLV、投資評価 NPV という 3 つの計算ツールをそれぞれ説明しました。基本的に、マルチ電卓アプリケーションは、これら 3 つのコア機能とアルゴリズムを 1 つの機能スクリプトに組み合わせます。各電卓の詳細についてはこちらの記事をご覧ください。

Easy2Digital ニュースレターを購読してこの Python スクリプトを入手すると、詳細ではなく、慎重に更新する必要がある重要なセクションが 3 つあります。

1. self オブジェクト内の位置引数を結合する

3 つの電卓の OOP コーディングにはわずかな違いがあります。それは、前述したように、各計算機には結果に影響を与える異なる変数メトリックがあるためです。これら 3 つは共通のメトリクスを持っていますが、異なるメトリクスもあります。したがって、まず最初に、3 つの電卓の自己オブジェクト コーディングを 1 つに結合する必要があります。

たとえば、それらはすべて、同じオーガニック メディアと有料メディアの指標セットを持っています。したがって、基本的に、引数の位置が、新しいステートメントの関数で作成する引数の位置と一致することを確認すれば、問題ありません。これは、間違ったメトリクスで数値が使用されることを避けるためです。

2. ルートの作成

単一の計算機と比較して、複数の計算機アプリケーションでは、より複雑なルート マップが必要になります。基本的には、先ほど説明した UX ワイヤーフレームを参照して、ルートを作成し、各ルートにタスクを割り当てることができます。

たとえば、ホーム ページには UX に 2 つの割り当てがあるため、2 つのルートが含まれます。まず第一に、ユーザーは Web アプリケーションに立ち寄るため、 @app.route("/")が必要であり、これはreturn render_template("index_selector.html", all_data = data)を返します。

したがって、このルートでは、ユーザーが電卓を選択する前にホームページ UI をロードできます。

次に、ユーザーは使いたい電卓を選択します。したがって、2 番目のルートが必要です: @app.route("/add_items", methods=["post"]) 。このルートの主な目的は、if 条件を使用してどの計算ページを開くかをトリガーすることです。

最後になりましたが、これは特定の計算ルートです。各ルート内には独自に定義された関数があり、冒頭で説明した新しい結合された self オブジェクトに従って self オブジェクトの位置引数を更新する必要があります。

@app.route("/CLV", methods=["POST", "GET"])

@app.route("/NPV", methods=["POST", "GET"])

@app.route("/PL", methods=["POST", "GET"])

Flask とは別に、Django という別の人気のある Web アプリケーション開発オプションがあります。それに関する別の記事を近々公開します。

3. 関連する結果ページを作成して割り当てる

各電卓の UI と顧客の期待は異なるため、各電卓には 2 つのページがあります。1 つは計算前のページ、もう 1 つは結果ページです。 HTML5 ファイルを保存するテンプレート フォルダーに、HTML5 ファイルを作成し、各計算ルートで適切なファイルを使用する必要があります。

return render_template("result_clv.html")

return render_template("result_npv.html")

return render_template("result.html")

Python Web アプリケーション – HTML5 + Jinja

UI と UX によると、この複数計算アプリケーションには主に Jinja といくつかの HTML5 要素機能が必要です。

1. ジンジャの動的コンテンツ

Jinja は、HTML5 コーディングで使用できる関数で、動的変数と接続して実際のデータに基づいて動的コンテンツを表示します。 {%...%}で始まり、 {% endfor %}で終わります。フレームワーク内では、二重中括弧{{ }}を使用して関数またはデータベースに接続する変数を設定できます。

2. id、class=”column”、class=”box”

HTML5 では、id はスクリプトの同じ部分内の他の要素を区別するための一意の要素を表します。通常、これは CSS のデザインと装飾、およびマーケティング追跡の特定の領域または要素に使用されます。

このクラスでは、大規模なアクションに使用するのが非常に一般的で人気があります。 1 つのクラス名を複数の要素で使用できます。同じ設定が適用されたエリアまたはブロックをグループ化すると便利です。

3. フォーム

フォームとアクションは、アプリケーション スクリプト内のフラスコ ルートに接続します。

<form action="/CLV" method="post">

アクションの名前は、接続して通信する特定のルートと同じである必要があります。すべてのデータ通信は、ここで設定した名前に基づいて行われます。

CSS3

このアプリケーションには、特定の要素に特定の装飾コマンドを割り当てるための 2 つの記号と記号があります。

1. ハッシュ # で始める

クラス要素とフォーム値には、クラスまたはフォーム要素で使用する名前とハッシュを使用して開始できます。

2. ドットから始めます。

id 要素の場合は、ドットと id 要素で使用する名前を使用して開始できます。

スクライト3

このアプリケーションでは、sqlite3 を使用して、ホームページ上のセレクターに計算のオプションを表示します。

まず最初に、引数 select を使用して、lousi2.db ファイル内のデータを取得します。モジュールの名前は、データベース ファイル内で前に設定した列名です。計算機の名前はテーブル名です。 fetchall() を使用して、列内のすべてのデータを取得することを表します。

def get_db():

db = getattr(g, '_database', None)

if db is None:

db = g._database = sqlite3.connect('louis2.db')

cursor = db.cursor()

cursor.execute('''SELECT module from calculators'')

all_data = cursor.fetchall()

all_data = [str(val[0]) for val in all_data]

return all_data

次に、html5 スクリプトでは、Jinja セクションに列の名前と戻り変数を入力する必要があります。さらに、これはセレクターであるため、モジュール データの完全なリストであるオプション値を設定する必要があります。

<form action="/add_items" method="POST">

<select name="select_url">

{% for module in all_data %}

<option value="{{ module }}">{{ module }}</option>

{% endfor %}

MySQL、SQL、MongoBD データベースの使用と接続については、別の記事で公開します。

Heroku

アプリケーションをホストする場合、デプロイが非常に簡単かつ簡単で、アプリケーションを開発して稼働させるための迅速な方法です。詳しい設定方法や使い方についてはこちらの記事をご覧ください。

https://www.easy2digital.com/automation/data/python-tutorial-26-create-a-shopify-bot-web-application-using-flask-and-heroku/

alibabacloud + Domainなどのサーバーサイドについてはまた別の記事で公開します

HTML5、CSS5、Python、Flask コーディング スクリプトのフルセット

Python Web アプリケーション開発 – マルチ計算機 – NPV、P&L、CLV の完全なスクリプトに興味がある場合は、 「Python Web アプリケーション – マルチ電卓」というメッセージを追加してニュースレターを購読してください。 。スクリプトはすぐにあなたのメールボックスに送信されます。

『Python Web アプリケーション開発 – マルチ計算機 – NPV、P&L、CLV』を楽しんで読んでいただければ幸いです。もしそうなら、以下にリストされているいずれかの方法で私たちをサポートしてください。それは常に私たちのチャンネルに役立ちます。

  • PayPal を通じて私のチャンネルをサポートしてください ( paypal.me/Easy2digital )
  • 私のチャンネルを購読し、 Easy2Digital Youtube チャンネルの通知ベルをオンにしてください。
  • Easy2Digital Facebook ページをフォローして「いいね!」してください
  • #easy2digital のハッシュタグを付けて記事をソーシャル ネットワークで共有してください
  • Easy2Digital 10% OFF 割引コード ( Easy2DigitalNewBuyers2021)を使用して製品を購入します
  • Easy2Digital の最新記事、ビデオ、 Buyfromlo製品やデジタル ソフトウェアの割引コードを受け取るには、毎週のニュースレターに登録してください。
  • Patreon を通じて月額メンバーシップに登録すると、限定特典をお楽しみいただけます ( www.patreon.com/louisludigital )

よくある質問:

Q1: Pythonは何ですか?

A: Pythonは高水準のプログラミング言語であり、多くの用途に使用されます。

Q2: Pythonの特徴は何ですか?

A: Pythonの特徴は、シンプルで読みやすい構文、豊富なライブラリ、クロスプラットフォームサポートなどです。

Q3: Pythonのバージョンはいくつありますか?

A: Pythonのバージョンは2.xと3.xの2つが一般的です。

Q4: Pythonはどのような用途に使われますか?

A: Pythonはウェブ開発、データ分析、人工知能、自動化など、さまざまな用途に使われます。

Q5: Pythonのインストール方法を教えてください。

A: Pythonの公式ウェブサイトからインストーラーをダウンロードし、指示に従ってインストールします。

Q6: Pythonでプログラムを書くにはどのエディタがおすすめですか?

A: Pythonのプログラミングには、PyCharm、Visual Studio Code、Atomなどの人気のあるエディタがあります。

Q7: Pythonでエラーが発生した場合、どうすればよいですか?

A: エラーメッセージを読んで問題を特定し、それに対応する修正を行う必要があります。オンラインのリソースやコミュニティも活用しましょう。

Q8: Pythonで外部ライブラリを使う方法はありますか?

A: Pythonのパッケージ管理ツールであるpipを使用して、外部ライブラリを簡単にインストールできます。

Q9: Pythonのデータ型は何ですか?

A: Pythonのデータ型には整数、浮動小数点数、文字列、リスト、タプル、辞書などがあります。

Q10: Pythonでの条件分岐はどのように行いますか?

A: Pythonではif-else文を使用して条件分岐を行います。条件に応じてプログラムの実行パスを制御できます。