「Python」を使って何ができるでしょうか？

#はじめに
Pythonは今ではトッププログラミング言語の1つです。Pythonが非常に人気がある理由は、この言語をサポートする大規模なコミュニティを持ち、また素晴らしいライブラリを持っているためです。それで、「Python」を使って何ができるでしょうか？。下記はpythonを使ってできることの例です。
- ウェブ開発
- ウェブスクレイピング
- データ分析
- 機械学習
- ゲーム開発
- デスクトップアプリケーション
- スクリプトを書く

##ウェブ開発
今色々な非常に人気の有名なウェブ開発フレームワークがあります。たとえば、Angular JS や　Laravel　や　Node JS　など。ウェブアプリケーションを作成するのにpythonを使うこともできます。pythonには、ウェブアプリケーションを作成するのに役立つフレームワークもあります。ウェブサイトの構築を手助けするのに人気のある2つのPythonフレームワークがあります、DjangoとFlaskです。この2つのフレームワークは、pythonでサーバーサイドコード（バックエンド）を作成するのに役立ちます。

###[Django](https://www.djangoproject.com/)
![django-logo-positive.png](https://qiita-image-store.s3.amazonaws.com/0/289131/dd771e81-85f4-54fe-402e-8c8b373fa4c9.png)
主に、フレームワークは開発者の開発時間と頭痛助けるためです、Djangoでも同じです。Djangoはフリーでオープンソースのウェブアプリケーションフレームワークです。Djangoは自身のプロジェクトで使用できるモジュールの大規模なコレクションを提供しています。

###[Flask](http://flask.pocoo.org/)
![flask.png](https://qiita-image-store.s3.amazonaws.com/0/289131/f75453e2-ca50-a186-d854-7a5471afaf55.png)
Flaskは、Python用のマイクロウェブフレームワークです。マイクロフレームワークは、特定のツールやライブラリを必要としないことです。FlaskはDjangoよりフレキシブル。なぜかというと、Flaskを使用するとツールや他のライブラリなどのものを実装する方法を決定できるからです。Flaskは一般的にMongoDBと一緒に使用されます、MongoDBはデータベースをより細かく制御できます。

##ウェブスクレイピング
ウェブスクレイピングはなんですか？
ウェブスクレイピングはウェブサイトからデータを抽出するために使用されるデータスクレイピング。人々は特定のウェブサイトから必要なデータを取得するためにWebスクレイピングを使用します。スクラップするデータはたとえば、価格、不動産データなど。もちろん手動で行うこともできますが、Webスクレイピングを使用するとよりエフェクティブです。[「Scrapy」](https://scrapy.org/)と [「BeautifulSoup」](https://www.crummy.com/software/BeautifulSoup/)はWebスクレイピングによく使用されます。

##データ分析
データ分析とは、有用な情報を得たり、結論を出したり、決定を支援したりするために、データを調べ、整理し、変換し、モデル化するプロセスです。今日、データ分析は決定を下し、ビジネスがプラスの効果を達成するのを助けるときに役割を果たします。

Pythonは、多くのデータ科学者がデータ分析を行うときに選択する言語の1つです。Pythonには、[NumPy](https://www.numpy.org/)や[Pandas](https://pandas.pydata.org/)などのデータ分析をサポートする優れたライブラリと、[Matplotlib](https://matplotlib.org/)や[Seaborn](https://seaborn.pydata.org/)などのデータの視覚化に使用されるライブラリです。

###[Matplotlib](https://matplotlib.org/)
![logo2.png](https://qiita-image-store.s3.amazonaws.com/0/289131/44577972-6273-5b01-b6d6-ab4aca5d7311.png)

MatplotlibはPythonの2Dプロットライブラリで、様々なフォーマットやインタラクティブな環境で質の数字を生成します。Matplotlibを使えば、ヒストグラム、パワースペクトル、散布図などのさまざまなタイプのデータの視覚化を生成できます。
以下はMatplotlibが持っているのデータ視覚化です。[もっと見る](https://matplotlib.org/gallery/index.html)。
![matplot.png](https://qiita-image-store.s3.amazonaws.com/0/289131/0d7ede96-4ad0-020d-e12d-64d5e7334d63.png)

###[Seaborn](https://seaborn.pydata.org/)
Matplotlibと同じように、SeabornもPythonデータ視覚化ライブラリです。実際に、SeabornはmatplotlibをベースにしたPythonデータ視覚化ライブラリです。Seabornもヒストグラム、パワースペクトル、散布図などのさまざまなタイプのデータの視覚化を生成できます。
以下は、Seabornが持っているのデータ視覚化です。[もっと見る](https://seaborn.pydata.org/examples/index.html#example-gallery)。
![seaborn.png](https://qiita-image-store.s3.amazonaws.com/0/289131/cd4054be-ad47-8c84-00a3-58074b829308.png)

##機械学習
これは私一番興味があるの部分です。機械学習は、自動的に学習してパフォーマンスを向上させることができるAIのアプリケーションです。機械学習は、コンピュータがデータにアクセスし、それを使用して人間の手を借りずに自動的に学習することを可能にするアルゴリズムを使用します。

機械学習を使ってできることはたくさんあります。たとえば：

- 画像認識
- 顔認識
- テキスト認識
- 音声認識
- 推薦システム
- その他

Pythonは色々な人気の機械学習ライブラリとフレームワークがあります。今日最も人気のあるのは： [「TensorFlow」](https://https://www.tensorflow.org)、 [「Scikit-learn」](https://scikit-learn.org/stable/)。
###[TensorFlow](https://https://www.tensorflow.org)
![tensorflow.jpg](https://qiita-image-store.s3.amazonaws.com/0/289131/9d521d6a-abd4-f2ed-826c-6507c5e5487a.jpeg)
TensorFlowは、Googleの脳チームによって作成されたフレームワークです。TensorFlowは数値計算と大規模機械学習のためのオープンソースライブラリです。TensorFlowを使用すると、NLP（自然言語処理）や画像分類などのためのディープニューラルネットワークをトレーニングおよび実行ができます。また、さまざまなプラットフォーム（CPU、GPU、TPU）にまたがって簡単に展開できます。

###[Scikit-learn](https://scikit-learn.org/stable/)
![scikit-learn-logo-notext.png](https://qiita-image-store.s3.amazonaws.com/0/289131/7d86b872-9342-1649-6685-c136c684691a.png)
Scikit-learnは、教師なしおよび教師つき学習アルゴリズムを提供する、Pythonのオープンソースの機械学習ライブラリです。それは、NumPy、pandas、そしてMatplotlibである、私が前に述べたの技術を使って構築されています。
Scikit-learnが提供する機能には、次のものがあります: 

- 分類
- 回帰
- クラスタリング
- 次元削減
- モデル選択
- 前処理

##ゲーム開発
ゲームを作るためにpythonを使うことはそれほど一般的ではないです、Pygameライブラリーを使ってゲーム開発のものをすることもできます。Pygameはゲームのようなマルチメディアアプリケーションを作るためのオープンソースのpythonのライブラリです。このライブラリを使って2Dゲームを作ることができます。
###[Pygame](https://www.pygame.org/news)
![pygame_tiny.png](https://qiita-image-store.s3.amazonaws.com/0/289131/e84aca5f-3e15-c0eb-db06-da7d9c972bb4.png)

#イメージのソース
- https://www.djangoproject.com/community/logos 
- http://flask.pocoo.org/community/logos 
- https://matplotlib.org/gallery/index.html
- https://seaborn.pydata.org/examples/index.html#example-gallery
- https://www.tensorflow.org/
- https://www.pygame.org/docs/
- https://scikit-learn.org/stable/

#参照
- https://www.djangoproject.com/
- http://flask.pocoo.org/
- https://matplotlib.org/
- https://seaborn.pydata.org/
- https://www.tensorflow.org/
- https://scikit-learn.org/stable/
- https://www.pygame.org/news

#まとめ
Pythonはトッププログラミング言語の1つです。Pythonは本当に強力なプログラミング言語です。Pythonを使えば、たくさんのことを作成することができます。プログラミングを学びたいのであれば、Pythonは推奨されるプログラミング言語の1つでもあります。