Pythonアプリケーションと学習

Pythonアプリケーションと学習

私は関係なく、プログラミングどのような言語を知るためにまず希望の、学習することを信じている。将来的に完了した後に何ができるのか?

対応するフィールドに、この論文ではPythonアプリケーションと学習。また、単にPythonアプリケーション領域「氷山の一角」を導入し、関心のある読者は、理解するための独自の情報を検索することができます。

Pythonアプリケーションは、ほとんどすべての中規模および大規模のインターネット企業は、さまざまなタスクを完了するためにはPythonを使用している、非常に広いです。詳細については、下記を参照してください、間違っている場合は、私にメッセージを修正してください、それは確かに心を開いて採用します。

世界ではよく知られているPythonアプリケーション

以下の内容は、企業ではよく知られている国内および外国企業の数はPythonアプリケーションが含まれます。

1つの国内のアプリケーション

1.1クレソン

私たちはしばしばクレソンネットワークの一つで、映画、読書、音楽のセットを訪問、スタートは、ほぼすべてのビジネスは、Pythonによって達成されたWeb開発言語の基礎としてPythonを使用することです。

ほとんど1.2知っています

最大のQ&Aコミュニティは、ほぼ全体のアーキテクチャは、Pythonの開発に基づいています知っています。

1.3百度

アリババは、主にJava言語で使用されている場合は、主にLinuxとのObjective-CとJingdongは、Huawei社は主にC、UNIXまたはLinuxを使用され、その後、Baiduは主にPythonとPHPを使用しています。

1.4医師の雨

国内の有名なオンライン医療のウェブサイトは、Pythonの開発に実装されています。

もちろん、そのようなシーナ、捜狐、テンセント、アリババ、網易、淘宝網、自動車、家庭、米国のグループなどの企業など多くの有名企業が、Pythonのを使用して、多かれ少なかれ完全なさまざまなタスクがありますされています。

2件の外国出願

2.1グーグル(Googleの)

世界最大の検索エンジン会社Googleの谷のPythonには、GoogleのApp Engine、code.google.comの開発に、Googleのeaty、グーグルの爬虫類、Googleの広告や他のプロジェクトの使用がたくさんあります。

2.2のYouTube

世界最大の動画サイトYouTubeはPythonが開発し使用することです。

2.3 Facebookの

基本的なライブラリの多くでFacebookのは、Pythonが行われます。

2.4ヤフー!グループ

Yahooはグループのプラットフォームを立ち上げました。

2.5 CIA

米中央情報局、CIAのウェブサイトは、Pythonが開発し使用することです。

2.6 NASA

NASAは、1997年以来、NASAは、複雑なデータ分析や計算のPythonのさまざまなを大量に使用します。

2.7 Dropboxの

アメリカ最大のオンラインクラウドストレージサイトは、サイトには10​​億件のドキュメントをダウンロードおよびアップロードを処理するほぼ毎日、Pythonで実装されています。

2.8 Instagramの

アメリカ最大の写真共有ソーシャルネットワーキングサイト、3000万枚の以上の写真が共有に毎日アップロードされ、すべてのPythonで開発されています。

2.9 RedHatの

パッケージ管理ツール、Pythonの開発のために使用されているRPM互換yumのパッケージ管理ツールで、世界で最も人気のあるLinuxディストリビューション。

上記の上場企業の一部は、当然のことながら、企業の多くは、Pythonを使用しているがあります。

二つの概要Pythonアプリケーションと学習

1 Webアプリケーション開発

現在、Web開発言語はPythonが、上昇傾向の主流に属し、特に「促進剤」としてのPythonのWeb開発フレームワークの成熟度で、非常に激しいですしていないが、Pythonは、多くの場合、Web開発で使用され、プログラマがより簡単に開発し、管理することができます複雑なWebプログラムは、PythonのWeb開発は良い選択になります。

例えば、mod_wsgiのモジュールによって、ApacheはPythonで書かれたWebアプリケーションを実行することができます。PythonのWSGI標準アプリケーションインターフェースは、PythonとWebベースのプログラムとの間の通信を調整するためにHTTPサーバを定義します。また、Pythonの+ Djangoフレームワーク、アプリケーションの非常に広い範囲で、非常に高速な学習曲線の開発が非常に低い、あなたはすぐに利用できるサービスWEBを構築することができます。

学習目標

  • ジャンゴ

    Djangoは、高レベルのオープンソースモデル駆動型のプログラミング言語Pythonのです。ビュー、コントローラ・スタイルのWebアプリケーションフレームワーク。それは、迅速かつ容易に、簡単に維持するために、データベース駆動型アプリケーションをこのフレームワークプログラマの高品質を使用して作成することができます。

  • ピラミッド

    ピラミッドは、大規模プロジェクトの開発のため、だけでなく、小規模なプロジェクトのために、両方の、小型で高速なPythonのWebアプリケーションフレームワークであり、それは非常に優れた性能を持っています。

  • 竜巻

    トルネードは、FriendFeedのWebサーバーとその一般的に使用されるツールの私たちのオープンソース版です。トルネードと(Pythonのフレームワークのほとんどを含む)主流のWebサーバフレームワークは明確に区別される:それは、非ブロッキングのサーバーですが、また非常に速いです。トルネードは、リアルタイムWebサービスのための理想的なフレームワークであるように、その非ブロックモードとのepollの使用の濃縮は、トルネードは、毎秒数千の接続を処理することができます。

  • フラスコ

    フラスコは、安全で使いやすい他の同様のフレームワーク、軽量で、より柔軟なPythonで書かれた軽量カスタマイズ可能なフレームワーク、、です。それは、MVCモデルの開発、労働の開発部門でうまく動作することができ、小さなチームが短時間で実現する機能豊富な中小サイトやWebサービスを完了することができます。その強力なプラグインのライブラリを維持しながら加えて、フラスコ強いカスタマイズがあり、ユーザーは簡単なコア機能が豊富で拡張機能のために、彼らのニーズに応じて機能を追加することができ、ユーザーがサイトをパーソナライズすることができますカスタム強力なウェブサイトを開発しています。

  • web.Py

    web.pyは、それがシンプルかつパワフルで、軽量なPythonのWebフレームワークです。web.pyは、オープンソースプロジェクトです。Redditの後半のアメリカの作家、共同創設者、有名なコンピュータハッカーアーロン・シュワルツ開発のRSS仕様の連携の作成者によってフレームワーク。web.pyは、多くの大規模なサイトで使用されてきました。

  • ボトル

    ボトルは、他のモジュールに依存しないPythonの標準ライブラリに加えて、唯一の.pyファイルで構成され、高速、シンプルで軽量なWebベースのWSIGミニフレームワークです。

  • TurboGearsの

    TurboGearsのは、使用して、サイトのバックエンド統合にWebフロントエンドを提供するためのフレームワークであるPythonの動的言語を。Python言語を選択するための多数のWeb開発モジュールがあります。右のモジュールを選択するには、開発者は、使用インタフェースと一貫性のあるシステムに簡単に提供、推奨オープンソースのPythonモジュールの多様性を統合し、PythonのWeb開発のリリースのスイートのようなTurboGearsのを、貴重な時間とエネルギーを費やしています経験。

  • Zopeの

    Zopeはさらに2つの独立したバージョン、Zopeの2とZopeの3シリーズのシリーズがあり、ZopeのオープンソースのWebアプリケーションサーバです。Zopeの3は、Zopeの2のために書き換えられたZope 2の教訓を、学習され、モダンなデザインパターン、アプリケーション・サーバのコンポーネントベースのアーキテクチャを使用することです。一部の人々は、Zopeの3は、軽量のJ2EEフレームワークのPythonのバージョンであると言います。スクリプト開発者はすぐにブラウザ経由で直接アプリケーションを構築することができますのためのZope 2が特に適しています。

2ネットワークプログラミング

さまざまなネットワーク・プロトコルのためのPythonのサポートは完璧ですが、それは多くの場合、サーバソフトウェア、ウェブクローラを書き込むために使用されます。例えば、Pythonモジュールがサポートソケット(ソケット)プログラミングの富を提供し、あなたが迅速かつ容易に分散アプリケーションを開発することができます。

学習目標

  • ツイスト

    サードパーティのライブラリのサポート非同期ネットワークプログラミングと(クライアントおよびサーバーを含む)、ほとんどの標準的なネットワークプロトコルツイスト、広く高性能なサーバソフトウェアの製造で使用されているさまざまなツールを提供します。ツイストは、イベント駆動型ネットワーキングエンジン用のPythonベースのフレームワークで実装され、Pythonは強力な非同期IOライブラリです。理解するための前提条件は、ねじれにねじれた少数のコアフィギュアのコンセプトです:原子炉、Protocl、ProtocolFactory、Deffered

  • リクエスト

    要求は、HTTPプロトコルのApache2ライセンスソースのライブラリを使用して、urllib3を書き換えることに基づいて、Pythonで書かれています。

    それに対処するURLリソースがurllibはより便利で、我々は完全にHTTPテストのニーズを満たすために多くの作業を保存することができます。

  • Scrapy

    PythonはScrapyは、迅速、高レベルの画面スクレイピングやWebページからウェブサイトや抽出構造化データをクロールするためのフレームワークをクロールを開発しています。用途のScrapy広い範囲が、データマイニング、監視、および自動テストのために使用することができます。

  • paramiko

    paramiko PythonはSSH2セキュアなリモート接続、認証およびキーベースの方法のサポートです。パッケージのレベルと比較しPexpect高い他の機能のSSHエージェント間のリモートコマンド実行、ファイル転送、、、、近いSSHプロトコルの機能を実現することができます。

3 GUIグラフィカル開発(デスクトップアプリケーション)

Pythonは、PIL、Tkinterのグラフィックスライブラリを提供など、簡単にグラフィックスを扱うことができます。PyQtは、PySide、wxPythonを、PyGTKのPythonは高速なデスクトップアプリケーション開発ツールです。

学習目標

  • wxPythonを

    wxPythonのは、Python言語の優れたGUIグラフィックスライブラリです。Pythonは、プログラマが簡単にGUIのユーザーインターフェイスの完全な、フルファンクションキーを作成することができます。wxPythonのは、PythonやPythonのクロスプラットフォームのGUIライブラリのwxWidgetsパッケージの良い方法は、ユーザーが利用できるモジュールです。

    このような適切な作業のwxPythonを完了するために、ライブラリをインストールするにはulipadのインストールなど。

  • PyQtは

    PyQtははGUIアプリケーションツールキットを作成することです。これは、プログラミング言語PythonとQtライブラリの統合が成功しています。Qtライブラリは、最も強力なライブラリの一つです。PyQtははフィル・トンプソンによって開発されました。

    PyQtはPythonのモジュールのセットを実装しています。これは、300以上のクラス、約6,000の関数やメソッドを持っています。これは、UNIX、WindowsとMacを含むすべての主要なオペレーティング・システム、上のマルチプラットフォームのツールキットの実行です。デュアルライセンスPyQtは、開発者がGPLと商用ライセンスを選択することができます。以前は、GPLのバージョンはPyQtはバージョン4から始まる、Unixでのみ使用することができ、GPLライセンスがサポートされているすべてのプラットフォームで利用可能です。

  • 落胆

    Kivyは、モバイルアプリケーションと自然なユーザーインターフェイスを持つ他のマルチタッチアプリケーションを開発するためのオープンソースのPythonライブラリです。それは、Android、iOSの、Linuxでは、OS XとWindowsで実行することができます。MITライセンス条項を使用して、Kivyは無料でオープンソースソフトウェアです。

自動化の4運用・保守

Pythonは、選択した言語のプログラミング操作やメンテナンスエンジニアである、それは自動化の運用・保守に認識を得ています。

Pythonは多くのオペレーティングシステムにおけるクロスプラットフォームPythonは、標準的なシステムコンポーネントです。例えば、ほとんどのLinuxディストリビューションとNetBSD、OpenBSDのとMac OS Xが統合されているPythonには、Pythonは、端末で直接実行することができます。また、Pythonの標準ライブラリは、オペレーティングシステムの機能のライブラリを呼び出すために使用される番号が含まれています。たとえば、pywin32このパッケージによって、私たちは、WindowsのCOMサービスと他のWindows APIにアクセスすることができ、使用IronPythonのは、我々は直接の.NET Frameworkを呼び出すことができます。

そのため、一般的なPythonでシステム管理スクリプト、読みやすさとパフォーマンスの両方、コードの再利用性と拡張性の程度は、通常のシェルスクリプトよりも優れています。

学習目標

  • OpenStackの

    OpenStackのは、オープンソースのクラウドコンピューティングプラットフォームのプロジェクト管理でのオープンソースソフトウェアプロジェクトのシリーズの組み合わせです。NASA(NASA)とRackspaceのことで協力を開発し、フリーソフトウェアのApacheライセンス(Apache Software Foundationの)発行されたライセンス)のオープンソースプロジェクトのライセンスを取得を開始しました。

    OpenStackのは、柔軟で拡張性の高いプライベートクラウドとパブリッククラウドコンピューティングサービスを提供しています。プロジェクトの目標は、実装が簡単で、大規模な拡張性の高い、豊かな、標準の統一されたクラウド管理プラットフォームを提供することです。

  • 塩スタック

    SaltStackサーバインフラストラクチャは、軽量のメッセージキュー(ZeroMQ)と組み合わせたPython言語は、サードパーティのPythonモジュール(Pyzmq、PyCrypto、Pyjinjia2、python-に基づいて、構成管理、リモート実行、監視、および他の機能と、集中管理プラットフォームであります)建設msgpack PyYAMLとなどが挙げられます。

    SaltStackを展開することによって、私たちは、サーババッチの何百万人がコマンドを実行し、数十に行うことができ、configureはビジネス、文書の配布、データ収集サーバ、オペレーティングシステム、および基本的なソフトウェアパッケージ管理に応じた管理を集中化、SaltStackは、運用・保守要員を改善することです効率、武器の事業構成と動作を標準化。

  • Ansible

    Ansible自動化された運用・保守ツールが出現し、Pythonの開発に基づいて、運用・保守ツール(人形、cfengineの、シェフ、FUNC、生地)の多くの利点のコレクションは、バッチシステム構成、バッチ展開、バッチ実行コマンドの機能を実現しています。

  • テンセントシロナガスクジラ

    ブルークジラCMDB構成プラットフォームはITILシステムにおいてアプリケーションのために設計され、CMDBは、他のプロセスの基礎であり、青色鯨Zhiyunシステムにおいて、構成プラットフォームは、様々な用途のための基礎として働き、操作およびメンテナンスを提供しますシーン設定データサービス。

人工知能の5分野

あなたが現在最もホットな、最も高い給与ITの仕事、人工知能の分野におけるエンジニア、話すことが最も右のを選択した場合、人工知能は、研究の非常に火災です。人工知能、ニューラルネットワーク、深い学習の分野では、機械学習のPythonの側面は、主流のプログラミング言語です。

これは、ビッグデータ分析と進化人工知能の学習の深さに基づいて、言うことができる、少なくとも以下の理由から、その性質上、Pythonのサポートを残すことができませんでした。

  1. こうしたGoogleのTransorFlow(ニューラルネットワークのフレームワーク)、FacebookのPyTorch(ニューラルネットワークのフレームワーク)と、はPythonで実装されているオープンソースコミュニティカラスニューラルネットワークライブラリとして世界で現在、優れた人工知能の学習フレームワーク、。
  2. マイクロソフトCNTK(認知ツールキット)は、完全にはPythonをサポートし、同社は、VSコードを開発し、また、ファーストクラスの言語のサポートとしてPythonを入れてきました。
  3. Pythonは、数学演算の様々なサポートするために科学技術計算やデータ分析に特化した高品質の2Dおよび3D画像を描画することができます。

要するに、AI時代の到来は、Pythonは多くのプログラミング言語から目立つ作り、最初のカード位置のAI時代の言語としてPythonは、基本的に誰も振ることはできません!

この分野の研究は、初心者には適していません、この研究はない焦点を当てています。

6ウェブクローラー

ウェブクローラは、プログラミング言語は多くありますが、Python言語はBeautifulSoupでとても早い書き込みWebクローラーに使用され、そして間違いなくPythonなどの主流言語の1 urllibは、セレンのような書き込みWebクローラーツールに多くのサービスを提供すると書くことができますまた、それはScrapyそれが広く使用されているウェブクローラフレームワークを提供します。

ウェブスパイダーウェブクローラは、大規模なデータ業界のデータを取得するためにコアツールであるとしても知られています。自動的に、昼と夜何Webクローラーが存在しない場合は、インターネットの高い知性がないデータを取るために登るために、これらの大企業に関連するデータは、おそらく少ない四分の三です。

学習目標

  • Scrapy

    PythonはScrapyは、迅速、高レベルの画面スクレイピングやWebページからウェブサイトや抽出構造化データをクロールするためのフレームワークをクロールを開発しています。用途のScrapy広い範囲が、データマイニング、監視、および自動テストのために使用することができます。

7科学技術計算やデータ分析

データ解析ではPython、可視化、および高品質な2D画像、3D画像をレンダリング、科学技術計算のためのPythonは、より適した多くのライブラリの開発を向上させると。このようなnumpyの、scipyのダウンロード、matplotlibの、パンダはPythonプログラマを満たすために、など、科学的なプログラムを書くように。

学習目標

  • scipyのダウンロード

    scipyのダウンロードは、数学、科学、工学のための人気のソフトウェアパッケージで、補間、統合、最適化、画像処理、常微分方程式の数値解を処理するような信号のような問題を解決を扱うことができます。効果的なnumpyの行列を計算し、numpyのscipyのダウンロード作業が効率的に問題を解決するようにするために使用されます。

  • numpyの

    行列データタイプ、ベクトル処理、及び精度演算ライブラリ:numpyの(数値Pythonは)のような多くの高度な数値プログラミングツールを、提供します。厳密にデジタル処理と生産のために設計されています。より多くの大手金融利用する企業、などのような科学計算組織のコア用:ローレンス・リバモア、NASAはそのハンドルもともとCで行われ、いくつかのタスクなど++、Fortranのか、MATLABを使用していました。

  • matplotlibの

    matplotlibのは、ハードコピーフォーマットと対話クロスプラットフォーム環境の様々なレベルで出版品質のグラフィックスを生成するPythonの2Dグラフィックスライブラリです。

    matplotlibのことで、開発者は、わずか数行のコードを必要とすることができ、図面、ヒストグラム、パワースペクトル、バー、エラー、散布などを生成することができます。

  • パンダ

    パンダnumpyのは、ツールに基づいて作成されたデータ分析タスクを解決するためのツールです。パンダは、大規模なライブラリを含め、いくつかの標準的なデータモデルは、大規模なデータセットを効率的に動作するために必要なツールを提供します。パンダは、多くの機能を提供し、方法は迅速かつ容易にデータを処理するために私たちを有効にします。あなたはすぐにそれがPythonが強力で効率的なデータ解析環境になるように重要な要因の一つであることがわかります。

  • Ipython

    IPythonは非常に多くの機能や便利な機能の多くを建て変数自動補完、自動インデント、サポートbashシェルコマンドのデフォルトのPythonの使いやすいシェル、サポート、より、Pythonのインタラクティブシェルです。

    IPythonはBSDオープンソースに基づいています。

8ゲーム開発

C ++およびその他の高性能グラフィックスディスプレイモジュール、Pythonやロジックで書かれた多くのゲームでは、ライトゲームLuaのに使用。そして、Pythonと比較して、Luaは、単純な小さなを備え、そしてPythonはより多くの機能とデータ型をサポートしています。

例えば、シド・マイヤーの文明(文明ゲーム、下記に示す)は、Pythonで実装されています。

IMG

また、Pythonは、高性能のゲームエンジン技術の基礎となる3DオープンGLレンダリングを実装直接呼び出すことができます。実際には、例えばpygameの、Pygletとココスは、2Dというように、多くのPython言語のゲームエンジンがあります。

あなたがゲームの開発に興味があるなら、あなたはこれらのゲームエンジンを見ることができます。

元の記事を公開 ウォンの賞賛0 ビュー3

おすすめ

転載: blog.csdn.net/manongajie/article/details/105256397